Toniolo and Linder, Equation (3b), real

Time bar (total: 9.5s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze186.0ms (2%)

Memory
15.8MiB live, 209.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.3s (23.9%)

Memory
46.8MiB live, 1 774.1MiB allocated
Samples
1.8s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-sin: 842.0ms (60% of total)
ival-pow2: 278.0ms (19.8% of total)
ival-mult: 95.0ms (6.8% of total)
ival-div: 65.0ms (4.6% of total)
ival-add: 59.0ms (4.2% of total)
ival-sqrt: 56.0ms (4% of total)
ival-true: 6.0ms (0.4% of total)
ival-assert: 3.0ms (0.2% of total)
Bogosity

explain410.0ms (4.3%)

Memory
5.4MiB live, 359.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
240-3(-6.994890873288282e-206 2.454759389968035e-159 7.695676301966139e+230)(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-rescue210
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow75
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow64
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow21
Confusion
Predicted +Predicted -
+213
-0232
Precision
1.0
Recall
0.875
Confusion?
Predicted +Predicted MaybePredicted -
+2103
-00232
Precision?
1.0
Recall?
0.875
Freqs
test
numberfreq
0235
121
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
112.0ms512×0valid
Compiler

Compiled 218 to 56 computations (74.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 56.0ms
ival-sin: 33.0ms (58.7% of total)
ival-pow2: 9.0ms (16% of total)
ival-div: 4.0ms (7.1% of total)
ival-mult: 3.0ms (5.3% of total)
ival-sqrt: 3.0ms (5.3% of total)
ival-add: 2.0ms (3.6% of total)
ival-true: 1.0ms (1.8% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess91.0ms (1%)

Memory
-23.3MiB live, 25.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
1101147
2211147
3383147
4845147
51976147
62541147
72802147
82914147
92966147
102981147
112981147
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.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.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
3.3MiB live, 3.3MiB 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

localize54.0ms (0.6%)

Memory
-0.9MiB live, 106.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.16796875
(*.f64 (/.f64 (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.234375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy0.23894501953688402
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy5.28186929500255
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
41.0ms256×0valid
Compiler

Compiled 134 to 28 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
ival-sin: 16.0ms (60.4% of total)
ival-pow2: 4.0ms (15.1% of total)
ival-mult: 2.0ms (7.5% of total)
ival-sqrt: 2.0ms (7.5% of total)
ival-div: 1.0ms (3.8% of total)
ival-add: 1.0ms (3.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series42.0ms (0.4%)

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

9 calls:

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

simplify194.0ms (2%)

Memory
22.5MiB live, 217.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
110111353
238651261
378121261
081151188
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)

rewrite222.0ms (2.3%)

Memory
-43.3MiB live, 212.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
16249
234449
3297849
0826034
Stop Event
iter limit
node limit
iter limit
Counts
6 → 299
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (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 (+.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 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (+.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 (/.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 #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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(*.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (/.f64 (-.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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)) (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 (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) (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (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 (/.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky))) #s(literal -1 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 (*.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64))
(pow.f64 (/.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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 #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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (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 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(exp.f64 (-.f64 (log.f64 (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 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.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 (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 (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 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #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 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (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 binary64) (pow.f64 (cos.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 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
(+.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))))
(*.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 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #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 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 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 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(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 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))

eval50.0ms (0.5%)

Memory
30.5MiB live, 107.2MiB allocated
Compiler

Compiled 9 472 to 1 772 computations (81.3% saved)

prune26.0ms (0.3%)

Memory
-3.5MiB live, 41.8MiB allocated
Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New34624370
Fresh000
Picked101
Done000
Total34724371
Accuracy
100.0%
Counts
371 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
94.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
99.3%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
94.7%
(*.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))))
70.8%
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (sin.f64 th))
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))
71.2%
(*.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))
48.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
82.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
54.1%
(*.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))
38.9%
(*.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))
32.8%
(*.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))
34.5%
(*.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))
79.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
24.9%
(*.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))
31.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
43.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)))))))
33.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 912 to 710 computations (22.1% saved)

simplify179.0ms (1.9%)

Memory
-16.3MiB live, 59.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

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

Useful iterations: 1 (0.0ms)

IterNodesCost
035246
058221
189220
2148220
3261220
4444220
5869220
61699220
72145220
82663220
92746220
102801220
112848220
122909220
133128220
143473220
153793220
164016220
174072220
184084220
194102220
204114220
214114220
224186220
234656220
04656220
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)) (sin.f64 th))
(sin.f64 th)
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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(/.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 ky)
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)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
(/.f64 #s(literal 1/2 binary64) (sin.f64 kx))
#s(literal 1/2 binary64)
(sin.f64 kx)
kx
(sin.f64 th)
th
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.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
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(literal -1 binary64)
Outputs
(*.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 kx) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) #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 th) (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))))
(/.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))))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))))
(sin.f64 ky)
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)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
(/.f64 #s(literal 1/2 binary64) (sin.f64 kx))
#s(literal 1/2 binary64)
(sin.f64 kx)
kx
(sin.f64 th)
th
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 th)
th
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.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 (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
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(literal -1 binary64)

localize114.0ms (1.2%)

Memory
-6.8MiB live, 232.0MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.12109375
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
accuracy0.2109375
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.32421875
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
accuracy0.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.20703125
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.2421875
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
accuracy0.34603500976844204
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
accuracy0.12890625
(/.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))))
accuracy0.16796875
(*.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))
accuracy0.23828125
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
accuracy45.402010725281784
#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)))
accuracy0.0
(sin.f64 th)
accuracy42.83776726048953
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.0
(sin.f64 kx)
accuracy0.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.12890625
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.16796875
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
80.0ms256×0valid
Compiler

Compiled 529 to 65 computations (87.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 59.0ms
ival-sin: 21.0ms (35.7% of total)
ival-mult: 13.0ms (22.1% of total)
ival-div: 9.0ms (15.3% of total)
ival-hypot: 4.0ms (6.8% of total)
ival-pow2: 4.0ms (6.8% of total)
ival-pow: 3.0ms (5.1% of total)
ival-add: 2.0ms (3.4% of total)
ival-sqrt: 2.0ms (3.4% of total)
ival-neg: 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
35.0MiB live, 73.3MiB allocated
Counts
18 → 93
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) #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 (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))))
#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)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 kx)
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(* -1 (/ (sin th) (sin ky)))
(+ (* -1 (/ (sin th) (sin ky))) (* 1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ (sin th) (pow (sin ky) 3))))))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 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))))))))))))))
(/ (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)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* 1/2 (/ ky kx))
(/ (+ (* 1/12 (* (pow kx 2) ky)) (* 1/2 ky)) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/36 ky) (* 1/120 ky)))) (* 1/12 ky)))) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* 1/12 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/5040 ky) (+ (* 1/720 ky) (* 1/6 (+ (* -1/36 ky) (* 1/120 ky))))))) (* -1/2 (+ (* -1/36 ky) (* 1/120 ky)))))))) kx)
(/ -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 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* -1 (* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(* 1/2 (/ ky (sin kx)))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* -1 (/ (sin th) (sin kx)))
(+ (* -1 (/ (sin th) (sin kx))) (* 1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ (sin th) (pow (sin kx) 3))))))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 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 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ (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)))
(/ -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 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 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 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(* -1 (sin ky))
(/ 1 (sin ky))
(* (* 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 (* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(* th (+ (* -1 (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 (+ (* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))
(* th (+ (* -1 (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/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
Calls

9 calls:

TimeVariablePointExpression
31.0ms
ky
@0
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (neg (sin ky)) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th))) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (* (/ 1/2 (sin kx)) ky) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
4.0ms
ky
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (neg (sin ky)) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th))) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (* (/ 1/2 (sin kx)) ky) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
4.0ms
ky
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (neg (sin ky)) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th))) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (* (/ 1/2 (sin kx)) ky) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
4.0ms
kx
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (neg (sin ky)) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th))) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (* (/ 1/2 (sin kx)) ky) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
4.0ms
kx
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (neg (sin ky)) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th))) (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (* (/ 1/2 (sin kx)) ky) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))

simplify222.0ms (2.3%)

Memory
-48.4MiB live, 203.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05302928
117332772
269082660
080272517
Stop Event
iter limit
node limit
Counts
93 → 90
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))))))
(* -1 (/ (sin th) (sin ky)))
(+ (* -1 (/ (sin th) (sin ky))) (* 1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ (sin th) (pow (sin ky) 3))))))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 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))))))))))))))
(/ (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)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* 1/2 (/ ky kx))
(/ (+ (* 1/12 (* (pow kx 2) ky)) (* 1/2 ky)) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/36 ky) (* 1/120 ky)))) (* 1/12 ky)))) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* 1/12 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/5040 ky) (+ (* 1/720 ky) (* 1/6 (+ (* -1/36 ky) (* 1/120 ky))))))) (* -1/2 (+ (* -1/36 ky) (* 1/120 ky)))))))) kx)
(/ -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 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* -1 (* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(* 1/2 (/ ky (sin kx)))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* -1 (/ (sin th) (sin kx)))
(+ (* -1 (/ (sin th) (sin kx))) (* 1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ (sin th) (pow (sin kx) 3))))))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 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 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ (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)))
(/ -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 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 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 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(* -1 (sin ky))
(/ 1 (sin ky))
(* (* 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 (* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(* th (+ (* -1 (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 (+ (* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))
(* th (+ (* -1 (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/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
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)))
(* -1 (/ (sin th) (sin ky)))
(/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))
(+ (* -1 (/ (sin th) (sin ky))) (* 1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ (sin th) (pow (sin ky) 3))))))
(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 #s(literal 1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))
(+ (* -1 (/ (sin th) (sin ky))) (* (pow kx 2) (+ (* 1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 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))))))))))))))
(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 (*.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 #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 (neg.f64 (sin.f64 th)) (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))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(* 1/2 (/ ky kx))
(*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))
(/ (+ (* 1/12 (* (pow kx 2) ky)) (* 1/2 ky)) kx)
(/.f64 (*.f64 ky (fma.f64 #s(literal 1/12 binary64) (*.f64 kx kx) #s(literal 1/2 binary64))) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/36 ky) (* 1/120 ky)))) (* 1/12 ky)))) kx)
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 ky #s(literal 7/720 binary64)) kx) kx (*.f64 #s(literal 1/12 binary64) ky)) (*.f64 kx kx) (*.f64 #s(literal 1/2 binary64) ky)) kx)
(/ (+ (* 1/2 ky) (* (pow kx 2) (+ (* 1/12 ky) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (+ (* -1/5040 ky) (+ (* 1/720 ky) (* 1/6 (+ (* -1/36 ky) (* 1/120 ky))))))) (* -1/2 (+ (* -1/36 ky) (* 1/120 ky)))))))) kx)
(/.f64 (fma.f64 ky (fma.f64 #s(literal 1/12 binary64) (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky #s(literal -31/15120 binary64))) (*.f64 kx kx) (*.f64 ky #s(literal 7/720 binary64))))) kx)
(/ -1 (sin ky))
(/.f64 #s(literal -1 binary64) (sin.f64 ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.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 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.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 (+.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)))) #s(literal -1/2 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* -1 (* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(*.f64 (neg.f64 (sin.f64 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))))))
(* (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))
(sin kx)
(sin.f64 kx)
(* 1/2 (/ ky (sin kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) #s(literal 1/2 binary64))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(neg.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))))))
(/ (* 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 (*.f64 ky (*.f64 (neg.f64 ky) ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (/.f64 ky (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)))))) (neg.f64 (+.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) (neg.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))))) (/.f64 ky (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) (* 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)))
(* -1 (/ (sin th) (sin kx)))
(/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))
(+ (* -1 (/ (sin th) (sin kx))) (* 1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))))
(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 (neg.f64 (sin.f64 th)) (sin.f64 kx)))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ (sin th) (pow (sin kx) 3))))))
(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 (neg.f64 (sin.f64 th)) (sin.f64 kx)))
(+ (* -1 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 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))))))))))))))
(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 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(* -1 ky)
(neg.f64 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal -1 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 #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))))
(/ -1 (sin kx))
(/.f64 #s(literal -1 binary64) (sin.f64 kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.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 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 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 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.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 (+.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/2 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(/ 1 ky)
(/.f64 #s(literal 1 binary64) ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* -1 (sin ky))
(neg.f64 (sin.f64 ky))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(* (* 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)
(* -1 (* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))
(*.f64 (neg.f64 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 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (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/6 binary64) #s(literal -1 binary64))) th)
(* th (+ (* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (*.f64 th th) (neg.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 (+ (* -1 (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/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/5040 (* (pow th 2) (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) #s(literal 1/6 binary64) #s(literal -1 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)
(* 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)

rewrite135.0ms (1.4%)

Memory
24.8MiB live, 232.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
035186
058161
1208160
21255160
09555160
Stop Event
iter limit
node limit
iter limit
Counts
18 → 622
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) #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 (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))))
#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)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 kx)
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
Outputs
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 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 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (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 kx) (pow.f64 (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 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (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 (sin.f64 th) (/.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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 th) (neg.f64 (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 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (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))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th)))) (neg.f64 (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 (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 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (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 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (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 (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 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 th) (neg.f64 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))) (/.f64 (sin.f64 th) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (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 (sqrt.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (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)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (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 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 #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 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (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 (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 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (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)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 kx)) (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)))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (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 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 #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 #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 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (hypot.f64 (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 #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 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #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 #s(literal 0 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (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 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 #s(literal -1 binary64) (neg.f64 (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/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.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) (neg.f64 (sin.f64 kx)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 #s(literal 0 binary64) (sin.f64 kx))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (sqrt.f64 (pow.f64 #s(literal 0 binary64) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (pow.f64 (pow.f64 #s(literal 0 binary64) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (pow.f64 #s(literal 0 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))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(*.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 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))) #s(literal 0 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 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))) #s(literal 0 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 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 2 binary64)) #s(literal 0 binary64))) #s(literal 0 binary64))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 #s(literal 0 binary64) (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(-.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 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(*.f64 #s(literal -1 binary64) (neg.f64 (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 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) #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)))))
(*.f64 (/.f64 (sin.f64 th) #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 kx))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #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)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #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)))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #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)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 #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))) #s(literal -1 binary64)))
(*.f64 (pow.f64 #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))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 kx) #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 kx) #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 (sin.f64 th) (/.f64 (sin.f64 kx) #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)))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) #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)))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 #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))) #s(literal -1 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 #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))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) #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))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) #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))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) #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))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 #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)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 #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)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 #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)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #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))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 #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 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #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)))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #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)))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #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))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #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 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 #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))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #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))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (sin.f64 th) (/.f64 #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 kx)))
(*.f64 (pow.f64 (/.f64 #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 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #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 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) #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)))))
(*.f64 (pow.f64 #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))) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) #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)))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #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 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) #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)))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) #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)))))
(*.f64 (sin.f64 kx) (pow.f64 #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))) #s(literal -1 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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)))) #s(literal -1 binary64))
(pow.f64 (/.f64 #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 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) #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)))) (/.f64 (neg.f64 (sin.f64 kx)) #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)))))) (+.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) #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))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) #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)))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 kx)) #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)))) (/.f64 (neg.f64 (sin.f64 kx)) #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)))) (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) #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))))))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 #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))))) (*.f64 (neg.f64 #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 kx))) (*.f64 (neg.f64 #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)))) (neg.f64 #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))))))
(/.f64 (pow.f64 #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))) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #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 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 #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 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #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 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 #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)))))
(/.f64 (sin.f64 kx) #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))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) #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)))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) #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)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #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 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (/.f64 (sin.f64 kx) #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)))))
(*.f64 #s(literal -1 binary64) (neg.f64 #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)))))
(*.f64 #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))) #s(literal 1 binary64))
#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)))
(/.f64 (neg.f64 #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)))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #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))) #s(literal -1 binary64)))
(/.f64 #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))) #s(literal 1 binary64))
(neg.f64 (neg.f64 #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)))))
(-.f64 #s(literal 0 binary64) (neg.f64 #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)))))
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 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 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (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 kx) (pow.f64 (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 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (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 (sin.f64 th) (/.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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 th) (neg.f64 (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 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (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))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th)))) (neg.f64 (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 (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 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (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 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (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 (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 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 th) (neg.f64 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))) (/.f64 (sin.f64 th) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #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))) #s(literal -1 binary64))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))) #s(literal -1 binary64))
(pow.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (+.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))))
(/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(+.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 (sin.f64 kx) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (sin.f64 kx))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (neg.f64 (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (sin.f64 kx))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(neg.f64 (sin.f64 kx))
(-.f64 (/.f64 #s(literal 0 binary64) (sin.f64 kx)) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(-.f64 #s(literal 0 binary64) (sin.f64 kx))
(+.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 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 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (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 kx) (pow.f64 (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 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (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 (sin.f64 th) (/.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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 th) (neg.f64 (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 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (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))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))))))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th)))) (neg.f64 (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 (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 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 th))) (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 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (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) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (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 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (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 (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 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (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 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 th) (neg.f64 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))) (/.f64 (sin.f64 th) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 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 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.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))) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (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 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (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 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #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 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 #s(literal -1 binary64) (neg.f64 (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/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.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) (neg.f64 (sin.f64 kx)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 #s(literal 0 binary64) (sin.f64 kx))
(*.f64 (/.f64 ky #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sin.f64 kx)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (sin.f64 kx))) (/.f64 ky (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 ky (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 ky (sin.f64 kx)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) ky) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (*.f64 ky #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) ky)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (*.f64 #s(literal 1/2 binary64) ky) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 ky #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky)
(*.f64 #s(literal 1/2 binary64) (/.f64 ky (sin.f64 kx)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky))
(*.f64 ky (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))
(pow.f64 (/.f64 (sin.f64 kx) (*.f64 #s(literal 1/2 binary64) ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) ky)) (sin.f64 kx))
(/.f64 (neg.f64 (*.f64 ky #s(literal -1/2 binary64))) (sin.f64 kx))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) ky))) (sin.f64 kx))
(/.f64 (*.f64 #s(literal -1/2 binary64) ky) (neg.f64 (sin.f64 kx)))
(/.f64 (*.f64 ky #s(literal -1/2 binary64)) (neg.f64 (sin.f64 kx)))
(/.f64 (neg.f64 ky) (neg.f64 (*.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) ky)) (neg.f64 (sin.f64 kx)))
(/.f64 (*.f64 #s(literal 1/2 binary64) ky) (sin.f64 kx))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (*.f64 #s(literal -1/2 binary64) ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (*.f64 ky #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sin.f64 kx) (*.f64 #s(literal 1/2 binary64) ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 kx) #s(literal 2 binary64)) ky))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (*.f64 #s(literal 1/2 binary64) ky)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 kx) (*.f64 #s(literal 1/2 binary64) ky))))
(/.f64 ky (*.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #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 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal -1/2 binary64) (*.f64 (log.f64 (sin.f64 kx)) #s(literal -1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(exp.f64 (neg.f64 (log.f64 (sin.f64 kx))))

eval101.0ms (1.1%)

Memory
-0.5MiB live, 228.1MiB allocated
Compiler

Compiled 19 354 to 2 398 computations (87.6% saved)

prune55.0ms (0.6%)

Memory
-14.1MiB live, 112.1MiB allocated
Pruning

37 alts after pruning (35 fresh and 2 done)

PrunedKeptTotal
New78217799
Fresh11819
Picked325
Done000
Total78637823
Accuracy
100.0%
Counts
823 → 37
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
55.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.2%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
32.9%
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
94.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
34.5%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
94.7%
(*.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))))
70.8%
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (sin.f64 th))
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))
71.2%
(*.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))
17.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
48.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
82.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
54.1%
(*.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))
38.9%
(*.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.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
34.5%
(*.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))
79.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
17.2%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th)))
32.9%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
33.0%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
24.9%
(*.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))
31.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
55.1%
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
55.0%
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
55.4%
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
43.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)))))))
33.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#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 1 532 to 1 188 computations (22.5% saved)

simplify10.0ms (0.1%)

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

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(sin.f64 th)
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
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
(*.f64 #s(literal -1/2 binary64) kx)
cost-diff0
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
cost-diff0
#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)))
cost-diff0
(*.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))
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
(/.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
041284
068269
196269
2123269
3159269
4185269
5197269
6197269
7217269
8217269
0217269
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)) #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 #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))
#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)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
#s(literal 1 binary64)
(sin.f64 th)
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 (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 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
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)) #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 #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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
#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)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
#s(literal 1 binary64)
(sin.f64 th)
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) (sin.f64 th)) (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 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx

localize170.0ms (1.8%)

Memory
3.1MiB live, 277.1MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(sin.f64 kx)
accuracy0.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.21875
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy3.2723838304106527
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.16796875
(*.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.23894501953688402
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy5.28186929500255
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
accuracy28.863515987341042
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.23894501953688402
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy1.9346138918925342
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
accuracy5.415085037630587
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
accuracy45.7383383644796
#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)))
accuracy0.0
(pow.f64 th #s(literal 3 binary64))
accuracy0.0625
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
accuracy31.924186997174143
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
accuracy42.83776726048953
#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.0
(sin.f64 kx)
accuracy0.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.162441259768442
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.19921875
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Samples
142.0ms256×0valid
Compiler

Compiled 546 to 74 computations (86.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 121.0ms
ival-add: 40.0ms (33% of total)
ival-pow: 28.0ms (23.1% of total)
ival-sin: 21.0ms (17.3% of total)
ival-mult: 10.0ms (8.2% of total)
ival-div: 7.0ms (5.8% of total)
ival-pow2: 5.0ms (4.1% of total)
ival-hypot: 4.0ms (3.3% of total)
const: 4.0ms (3.3% of total)
ival-sqrt: 2.0ms (1.6% of total)
exact: 1.0ms (0.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series40.0ms (0.4%)

Memory
12.0MiB live, 89.1MiB allocated
Counts
22 → 86
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)) #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 #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))
#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)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) 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)))))
(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 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 kx)
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 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))))))
(* -1/2 kx)
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(/ kx (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))))
(* (* (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)))))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ (sin 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) (* 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))))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(/ kx (pow ky 2))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(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 (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(* -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
10.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 th) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin kx) (/ kx (pow (sin ky) 2)) (pow (sin ky) 2) (pow (sin kx) 2))
6.0ms
kx
@inf
((/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin kx) (/ kx (pow (sin ky) 2)) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
ky
@inf
((/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin kx) (/ kx (pow (sin ky) 2)) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
kx
@-inf
((/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin kx) (/ kx (pow (sin ky) 2)) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
ky
@-inf
((/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin kx) (/ kx (pow (sin ky) 2)) (pow (sin ky) 2) (pow (sin kx) 2))

simplify181.0ms (1.9%)

Memory
-32.5MiB live, 252.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05062186
116272090
260971964
084111828
Stop Event
iter limit
node limit
Counts
86 → 83
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))))))
(* -1/2 kx)
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(/ kx (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))))
(* (* (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)))))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ (sin 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) (* 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))))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(/ kx (pow ky 2))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(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 (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(* -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 #s(literal -1/2 binary64) 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 #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 (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 (*.f64 #s(literal -1/2 binary64) 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
#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 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 (* -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 #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 #s(literal -1/2 binary64) 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))
(* -1/2 kx)
(*.f64 #s(literal -1/2 binary64) kx)
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(/ kx (pow (sin ky) 2))
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 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))
(* (* (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))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(*.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (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))
(sin kx)
(sin.f64 kx)
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.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)
(/ (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 (+.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)
(+ (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)))
(/ 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/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)))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 kx kx) #s(literal -2/189 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64))) (*.f64 ky ky) (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (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)
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (sin.f64 th) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (sin.f64 th) ky))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) ky)
(/ kx (pow ky 2))
(/.f64 kx (*.f64 ky ky))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky 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))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) 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 (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) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 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 (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (sin.f64 ky) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(* -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)))

rewrite212.0ms (2.2%)

Memory
16.8MiB live, 296.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041226
068211
1244211
21512211
08357211
Stop Event
iter limit
node limit
iter limit
Counts
22 → 492
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)) #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 #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))
#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)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) 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)))))
(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 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 kx)
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
Outputs
(*.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 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.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/2 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) (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 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 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (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 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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.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 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.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 (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 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (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)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 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))) (sin.f64 th))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (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 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(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 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64))) (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 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (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 #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) #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 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64)) (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 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (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 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 ky))))
(*.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 (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 (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)) (sin.f64 ky)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)) #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 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(/.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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 (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 #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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)))
(/.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))
(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))))
(exp.f64 (-.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (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)))) (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)))) (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))) (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 kx) (sin.f64 ky)) #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 kx) (sin.f64 ky)) #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 kx) (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))) (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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 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 kx) (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 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (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 (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 (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 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 #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 (-.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 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 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 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 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 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #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 (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))) (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)))
(pow.f64 (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) #s(literal -1 binary64))
(pow.f64 (/.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)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) #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 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (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 (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)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 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) (/.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))
(/.f64 #s(literal 1 binary64) (/.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)))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))))
(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 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 #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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (pow.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (fma.f64 (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)) (*.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (*.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) (neg.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))))
(fma.f64 (/.f64 (neg.f64 kx) #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (/.f64 (neg.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (neg.f64 (sin.f64 ky))) (/.f64 (neg.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 kx #s(literal -1 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (/.f64 kx #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (/.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 kx (pow.f64 kx #s(literal -1 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (sin.f64 ky)) (/.f64 (*.f64 kx kx) (sin.f64 ky)) #s(literal 1 binary64))
(fma.f64 (/.f64 #s(literal -1/2 binary64) (sin.f64 ky)) (/.f64 kx (/.f64 (sin.f64 ky) kx)) #s(literal 1 binary64))
(fma.f64 (/.f64 (neg.f64 kx) (sin.f64 ky)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (neg.f64 (sin.f64 ky))) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx #s(literal 1 binary64))
(fma.f64 (/.f64 kx (sin.f64 ky)) (/.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 ky) kx)) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (sin.f64 ky)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 ky)) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 ky)) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) kx)) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 ky)) (/.f64 kx (sin.f64 ky)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (pow.f64 kx #s(literal -1 binary64))) #s(literal 1 binary64))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 ky) kx)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 kx #s(literal -1 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 1 binary64))
(fma.f64 kx (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 1 binary64))
(fma.f64 kx (*.f64 #s(literal -1/2 binary64) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))))
(-.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (pow.f64 (fma.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) kx))
(*.f64 #s(literal -1/2 binary64) kx)
(*.f64 kx #s(literal -1/2 binary64))
(*.f64 (/.f64 #s(literal -2 binary64) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (/.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 th))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th 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 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (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) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (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 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (*.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))) (+.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.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 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.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/2 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) (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 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 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (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 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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.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 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (pow.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 (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 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (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)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #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 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))) (sin.f64 th))
(*.f64 (sin.f64 ky) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (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 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(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 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64))) (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 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (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 #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) #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 ky th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(literal 1 binary64)) (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 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (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 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 ky) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (fma.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 ky th)))) #s(literal 4 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))))
(-.f64 (/.f64 (cos.f64 (-.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (log.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) (/.f64 kx (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 kx (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(*.f64 (/.f64 kx (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) (pow.f64 (pow.f64 kx #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (/.f64 (sin.f64 ky) kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 kx (sin.f64 ky)))
(*.f64 (neg.f64 kx) (pow.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 kx (pow.f64 (sin.f64 ky) #s(literal -2 binary64)))
(pow.f64 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 kx (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 kx #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (*.f64 kx #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (/.f64 kx (sin.f64 ky)) (sin.f64 ky))
(/.f64 (neg.f64 (neg.f64 kx)) (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx)))
(/.f64 (neg.f64 kx) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx))
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(neg.f64 (/.f64 kx (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 kx (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx)) #s(literal -1 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 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/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 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #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 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 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 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 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 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 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 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #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) ky)))))
(-.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 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (+.f64 #s(literal 1 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 (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 #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))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))

eval146.0ms (1.5%)

Memory
-9.2MiB live, 144.3MiB allocated
Compiler

Compiled 20 199 to 2 595 computations (87.2% saved)

prune134.0ms (1.4%)

Memory
8.9MiB live, 123.9MiB allocated
Pruning

57 alts after pruning (52 fresh and 5 done)

PrunedKeptTotal
New64232674
Fresh102030
Picked235
Done022
Total65457711
Accuracy
100.0%
Counts
711 → 57
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
55.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.2%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
74.3%
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
72.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
94.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
71.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
30.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))))
38.3%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
71.2%
(/.f64 (sin.f64 th) (/.f64 (/.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)))
99.6%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
31.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
50.8%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.2%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
70.8%
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
71.2%
(*.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))
17.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
48.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
82.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
54.1%
(*.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))
43.7%
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.6%
(*.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))
33.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
34.5%
(*.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))
54.1%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx 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))
17.2%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th)))
32.9%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
33.0%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
14.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 th))
24.9%
(*.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))
14.4%
(*.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 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
26.9%
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
26.1%
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
24.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
16.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
17.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
22.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
31.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
17.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
18.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
3.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
55.4%
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
43.2%
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
33.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#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)))
17.5%
#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)))
17.5%
#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)))
17.5%
#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)))
14.6%
#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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
10.3%
#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.6%
#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 2 883 to 2 103 computations (27.1% saved)

simplify358.0ms (3.8%)

Memory
13.0MiB live, 222.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
059572
0102547
1166545
2283524
3638524
41474517
52266517
63777517
76382517
08373499
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
#s(literal 1 binary64)
(/.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
(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 (*.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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
#s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky)))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)
(fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx))
(fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx))
(neg.f64 ky)
ky
(*.f64 ky (*.f64 kx #s(literal -2/189 binary64)))
(*.f64 kx #s(literal -2/189 binary64))
#s(literal -2/189 binary64)
(*.f64 #s(literal 1/15 binary64) kx)
#s(literal 1/15 binary64)
(*.f64 ky ky)
(*.f64 #s(literal 1/3 binary64) kx)
#s(literal 1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
(sin.f64 ky)
ky
#s(literal -2 binary64)
#s(literal 1 binary64)
(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
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(literal 1 binary64)
(/.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
(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 (*.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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))) ky))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))) ky))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))
(fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))) ky))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
#s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky)))
#s(approx (/ kx (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))) ky)))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(*.f64 (/.f64 kx ky) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))) ky))
(fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)
(*.f64 kx (fma.f64 (*.f64 #s(literal 1/3 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) #s(literal 1 binary64))))
(fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx))
(*.f64 (fma.f64 (*.f64 #s(literal 1/15 binary64) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal 2/189 binary64) #s(literal 1/3 binary64))) kx)
(fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx))
(*.f64 (fma.f64 #s(literal 2/189 binary64) (*.f64 ky ky) #s(literal 1/15 binary64)) kx)
(neg.f64 ky)
ky
(*.f64 ky (*.f64 kx #s(literal -2/189 binary64)))
(*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky)
(*.f64 kx #s(literal -2/189 binary64))
(*.f64 #s(literal -2/189 binary64) kx)
#s(literal -2/189 binary64)
(*.f64 #s(literal 1/15 binary64) kx)
#s(literal 1/15 binary64)
(*.f64 ky ky)
(*.f64 #s(literal 1/3 binary64) kx)
#s(literal 1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
(fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
(sin.f64 ky)
ky
#s(literal -2 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th

localize209.0ms (2.2%)

Memory
-4.7MiB live, 345.9MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.16796875
(*.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.234375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy5.28186929500255
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy28.202229124860775
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.21388627930532603
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
accuracy1.9346138918925342
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
accuracy5.551300977761916
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
accuracy45.7383383644796
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)))
accuracy1.9346138918925342
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))
accuracy18.014578900805976
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
accuracy27.83030743980565
#s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky)))
accuracy45.7383383644796
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64)))
accuracy0.02734375
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
accuracy0.1640625
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
accuracy31.924186997174143
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
accuracy42.83776726048953
#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.0390625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.16015625
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
accuracy0.162441259768442
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.16796875
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
Samples
167.0ms256×0valid
Compiler

Compiled 985 to 111 computations (88.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 137.0ms
ival-mult: 55.0ms (40.2% of total)
const: 33.0ms (24.1% of total)
ival-sin: 19.0ms (13.9% of total)
ival-div: 8.0ms (5.8% of total)
ival-add: 8.0ms (5.8% of total)
ival-hypot: 4.0ms (2.9% of total)
ival-pow2: 4.0ms (2.9% of total)
ival-pow: 3.0ms (2.2% of total)
ival-sqrt: 2.0ms (1.5% of total)
exact: 1.0ms (0.7% of total)
ival-neg: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series74.0ms (0.8%)

Memory
4.6MiB live, 135.0MiB allocated
Counts
27 → 93
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.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)) #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)
(fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
(*.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))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky)))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
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 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) (+ 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))))))
(* kx (+ 1/15 (* 2/189 (pow ky 2))))
(* -1/2 kx)
(/ kx (pow (sin ky) 2))
(/ (* kx (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2)))))))) (pow 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))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (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)))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(pow (sin kx) 2)
(* -1 (* kx (- (* -2/189 (pow ky 2)) 1/15)))
(* -1 (/ (* kx (- (* (pow ky 2) (- (* (pow ky 2) (- (* -2/189 (pow ky 2)) 1/15)) 1/3)) 1)) (pow ky 2)))
(/ 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 (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))))))
(* 1/15 kx)
(+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
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))))
(/ kx (pow ky 2))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (+ (* 1/15 (* kx (pow ky 2))) (* 1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (+ (* 1/3 kx) (* (pow ky 2) (+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx)))))) (pow ky 2))
(/ 1 (pow ky 2))
(/ (+ 1 (* 1/3 (pow ky 2))) (pow ky 2))
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* 1/15 (pow ky 2))))) (pow ky 2))
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2))))))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* 2/189 (* kx (pow ky 2)))
(* (pow ky 2) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(* 2/189 (* kx (pow ky 4)))
(* (pow ky 4) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (* 1/3 (/ kx (pow ky 4))))))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (+ (* 1/3 (/ kx (pow ky 4))) (/ kx (pow ky 6))))))
(/ 1 (pow (sin ky) 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))))
(* -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
8.0ms
kx
@inf
((/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (* (/ 1 (/ (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 th) (* -1/6 (* th th)) (* th th) (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 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)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (* (pow (sin ky) -2) kx)) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (/ kx (pow (sin ky) 2)) (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (* (pow (sin ky) -2) kx) (pow (sin ky) -2) (pow (sin ky) 2) (pow (sin kx) 2))
6.0ms
ky
@inf
((/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (* (/ 1 (/ (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 th) (* -1/6 (* th th)) (* th th) (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 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)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (* (pow (sin ky) -2) kx)) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (/ kx (pow (sin ky) 2)) (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (* (pow (sin ky) -2) kx) (pow (sin ky) -2) (pow (sin ky) 2) (pow (sin kx) 2))
6.0ms
kx
@-inf
((/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (* (/ 1 (/ (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 th) (* -1/6 (* th th)) (* th th) (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 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)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (* (pow (sin ky) -2) kx)) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (/ kx (pow (sin ky) 2)) (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (* (pow (sin ky) -2) kx) (pow (sin ky) -2) (pow (sin ky) 2) (pow (sin kx) 2))
5.0ms
kx
@0
((/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (* (/ 1 (/ (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 th) (* -1/6 (* th th)) (* th th) (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 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)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (* (pow (sin ky) -2) kx)) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (/ kx (pow (sin ky) 2)) (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (* (pow (sin ky) -2) kx) (pow (sin ky) -2) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
ky
@-inf
((/ 1 (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (* (/ 1 (/ (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 th) (* -1/6 (* th th)) (* th th) (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 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)))) (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (+ (* (* -1/2 kx) (* (pow (sin ky) -2) kx)) 1) (* -1/2 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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (* (* -1/6 (* th th)) th) th) (/ kx (pow (sin ky) 2)) (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (* (pow (sin ky) -2) kx) (pow (sin ky) -2) (pow (sin ky) 2) (pow (sin kx) 2))

simplify180.0ms (1.9%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
05242291
116462214
261192117
081471959
Stop Event
iter limit
node limit
Counts
93 → 91
Calls
Call 1
Inputs
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 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) (+ 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))))))
(* kx (+ 1/15 (* 2/189 (pow ky 2))))
(* -1/2 kx)
(/ kx (pow (sin ky) 2))
(/ (* kx (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2)))))))) (pow 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))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (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)))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(pow (sin kx) 2)
(* -1 (* kx (- (* -2/189 (pow ky 2)) 1/15)))
(* -1 (/ (* kx (- (* (pow ky 2) (- (* (pow ky 2) (- (* -2/189 (pow ky 2)) 1/15)) 1/3)) 1)) (pow ky 2)))
(/ 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 (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))))))
(* 1/15 kx)
(+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
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))))
(/ kx (pow ky 2))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (+ (* 1/15 (* kx (pow ky 2))) (* 1/3 kx)))) (pow ky 2))
(/ (+ kx (* (pow ky 2) (+ (* 1/3 kx) (* (pow ky 2) (+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx)))))) (pow ky 2))
(/ 1 (pow ky 2))
(/ (+ 1 (* 1/3 (pow ky 2))) (pow ky 2))
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* 1/15 (pow ky 2))))) (pow ky 2))
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2))))))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* 2/189 (* kx (pow ky 2)))
(* (pow ky 2) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(* 2/189 (* kx (pow ky 4)))
(* (pow ky 4) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (* 1/3 (/ kx (pow ky 4))))))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (+ (* 1/3 (/ kx (pow ky 4))) (/ kx (pow ky 6))))))
(/ 1 (pow (sin ky) 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))))
(* -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) (* (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 #s(literal -1/2 binary64) 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.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) 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 #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 #s(literal -1/2 binary64) 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 (* 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 #s(literal 1/2 binary64) (*.f64 kx kx)) (/.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)) (pow.f64 (sin.f64 ky) #s(literal 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)))
(* kx (+ 1/15 (* 2/189 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/189 binary64) #s(literal 1/15 binary64)) kx)
(* -1/2 kx)
(*.f64 #s(literal -1/2 binary64) kx)
(/ kx (pow (sin ky) 2))
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/ (* kx (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2)))))))) (pow ky 2))
(*.f64 (/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/189 binary64) #s(literal 1/15 binary64)) (*.f64 ky ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) (/.f64 kx 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))
(* (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 ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* (/ 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))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (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))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(* -1 (* kx (- (* -2/189 (pow ky 2)) 1/15)))
(*.f64 (neg.f64 kx) (fma.f64 #s(literal -2/189 binary64) (*.f64 ky ky) #s(literal -1/15 binary64)))
(* -1 (/ (* kx (- (* (pow ky 2) (- (* (pow ky 2) (- (* -2/189 (pow ky 2)) 1/15)) 1/3)) 1)) (pow ky 2)))
(*.f64 (/.f64 (neg.f64 kx) ky) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -2/189 binary64) (*.f64 ky ky) #s(literal -1/15 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (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/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 (+.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/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 (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)
(/ (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 (*.f64 ky ky) #s(literal 1/2 binary64)) (/.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)))
(* 1/15 kx)
(*.f64 #s(literal 1/15 binary64) kx)
(+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/189 binary64) #s(literal 1/15 binary64)) kx)
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) kx) kx (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 kx kx) #s(literal -2/189 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64))) (*.f64 ky ky) (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (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)
(/ kx (pow ky 2))
(/.f64 kx (*.f64 ky ky))
(/ (+ kx (* 1/3 (* kx (pow ky 2)))) (pow ky 2))
(/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)
(/ (+ kx (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))
(/ (+ kx (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 kx) (+ (* 2/135 kx) (* 1/3 (+ (* -1/9 kx) (* 2/45 kx))))))) (+ (* -1/9 kx) (* 2/45 kx)))) (* -1/3 kx)))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx #s(literal -2/189 binary64)) ky) (neg.f64 ky) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(/ (+ kx (* (pow ky 2) (+ (* 1/15 (* kx (pow ky 2))) (* 1/3 kx)))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))
(/ (+ kx (* (pow ky 2) (+ (* 1/3 kx) (* (pow ky 2) (+ (* 2/189 (* kx (pow ky 2))) (* 1/15 kx)))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/3 binary64) kx) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/189 binary64) #s(literal 1/15 binary64)) kx) kx)) (*.f64 ky ky))
(/ 1 (pow ky 2))
(/.f64 #s(literal 1 binary64) (*.f64 ky ky))
(/ (+ 1 (* 1/3 (pow ky 2))) (pow ky 2))
(/.f64 (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/3 binary64) #s(literal 1 binary64)) ky) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* 1/15 (pow ky 2))))) (pow ky 2))
(/.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/3 (* (pow ky 2) (+ 1/15 (* 2/189 (pow ky 2))))))) (pow ky 2))
(/.f64 (/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/189 binary64) #s(literal 1/15 binary64)) (*.f64 ky ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) 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 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(* 2/189 (* kx (pow ky 2)))
(*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))
(* (pow ky 2) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(*.f64 (*.f64 kx (+.f64 (/.f64 #s(literal 1/15 binary64) (*.f64 ky ky)) #s(literal 2/189 binary64))) (*.f64 ky ky))
(* 2/189 (* kx (pow ky 4)))
(*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64))
(* (pow ky 4) (+ (* 2/189 kx) (* 1/15 (/ kx (pow ky 2)))))
(*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (+.f64 (/.f64 #s(literal 1/15 binary64) (*.f64 ky ky)) #s(literal 2/189 binary64))))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (* 1/3 (/ kx (pow ky 4))))))
(*.f64 (fma.f64 (/.f64 kx (pow.f64 ky #s(literal 4 binary64))) #s(literal 1/3 binary64) (*.f64 kx (+.f64 (/.f64 #s(literal 1/15 binary64) (*.f64 ky ky)) #s(literal 2/189 binary64)))) (pow.f64 ky #s(literal 4 binary64)))
(* (pow ky 4) (+ (* 2/189 kx) (+ (* 1/15 (/ kx (pow ky 2))) (+ (* 1/3 (/ kx (pow ky 4))) (/ kx (pow ky 6))))))
(*.f64 (fma.f64 kx (+.f64 (/.f64 #s(literal 1/15 binary64) (*.f64 ky ky)) #s(literal 2/189 binary64)) (fma.f64 (/.f64 kx (pow.f64 ky #s(literal 4 binary64))) #s(literal 1/3 binary64) (/.f64 kx (pow.f64 ky #s(literal 6 binary64))))) (pow.f64 ky #s(literal 4 binary64)))
(/ 1 (pow (sin ky) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #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))))) 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)))

rewrite163.0ms (1.7%)

Memory
40.4MiB live, 304.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059453
0102424
1358421
22346421
08192418
Stop Event
iter limit
node limit
iter limit
Counts
27 → 569
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.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)) #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)
(fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
(*.f64 #s(literal -1/2 binary64) kx)
(*.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))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky)))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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 #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 (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 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64)) (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (neg.f64 (sin.f64 ky)))
(*.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)) #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 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64)) #s(literal 2 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 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 #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 (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 (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) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(*.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) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.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 (/.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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (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 (*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (sin.f64 ky)) (pow.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)) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (sin.f64 ky)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal 1 binary64))
(*.f64 (sin.f64 th) (/.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))) (/.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 ky) (*.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) (/.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))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) #s(literal -1 binary64))
(/.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 (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)) (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)) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (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)) (neg.f64 (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 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #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) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 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)) #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)) (sin.f64 ky)))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.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 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.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 (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) (pow.f64 (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (/.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 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(pow.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)) #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 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (sin.f64 ky)))
(/.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky)))))
(/.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))) (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))))
(/.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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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 (/.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)) (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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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) (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (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 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal -1 binary64)))
(exp.f64 (-.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (log.f64 (sin.f64 ky))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1 binary64))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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)))) (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)))) (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))) (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 kx) (sin.f64 ky)) #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 kx) (sin.f64 ky)) #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 kx) (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))) (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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 kx) (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 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 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 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 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 (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 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 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 (-.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 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 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 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (pow.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 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #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 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 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))) (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64)))) #s(literal -1 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))))) (neg.f64 (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx))) (*.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)))) (*.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)))) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/225 binary64) (*.f64 kx kx) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx) (*.f64 #s(literal 1/15 binary64) kx))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64))) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64))) (fma.f64 #s(literal 1/225 binary64) (*.f64 kx kx) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx) (*.f64 #s(literal 1/15 binary64) kx)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))) (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx)) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/15 binary64) kx) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx)))) (fma.f64 (pow.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal 3 binary64)) #s(literal -8/6751269 binary64) (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 3 binary64)))))
(fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) kx) #s(literal -2/189 binary64) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky) #s(literal -1 binary64)) ky (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 (neg.f64 ky) (*.f64 kx ky)) #s(literal -2/189 binary64) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 (neg.f64 ky) (*.f64 #s(literal -2/189 binary64) kx)) ky (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 kx ky) (*.f64 #s(literal -2/189 binary64) (neg.f64 ky)) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 (neg.f64 ky) ky) (*.f64 #s(literal -2/189 binary64) kx) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky) ky) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 #s(literal 1/15 binary64) kx (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))
(fma.f64 (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky) (neg.f64 ky) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (*.f64 #s(literal -2/189 binary64) kx) (*.f64 (neg.f64 ky) ky) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 (neg.f64 ky) (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 kx #s(literal 1/15 binary64) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))
(fma.f64 ky (*.f64 (*.f64 #s(literal -2/189 binary64) kx) (neg.f64 ky)) (*.f64 #s(literal 1/15 binary64) kx))
(fma.f64 ky (neg.f64 (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky)) (*.f64 #s(literal 1/15 binary64) kx))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))) (/.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))))
(-.f64 (/.f64 (*.f64 (pow.f64 (*.f64 #s(literal -2/189 binary64) kx) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64))) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx))) (/.f64 (pow.f64 (*.f64 #s(literal 1/15 binary64) kx) #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal -1/15 binary64) kx))))
(-.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 #s(literal -2/189 binary64) kx) ky) ky))
(+.f64 (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx) (*.f64 #s(literal 1/15 binary64) kx))
(+.f64 (*.f64 #s(literal 1/15 binary64) kx) (*.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (pow.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) #s(literal -1 binary64))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (*.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) (neg.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))) (fma.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))))
(fma.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) #s(literal -1/2 binary64)) kx #s(literal 1 binary64))
(fma.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) kx) #s(literal 1 binary64))
(fma.f64 kx (*.f64 #s(literal -1/2 binary64) #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))) (/.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (pow.f64 (fma.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (*.f64 #s(literal -1/2 binary64) kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (pow.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (pow.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) #s(literal -1 binary64))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (*.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))) (neg.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx)) (fma.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))))
(fma.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)) (*.f64 kx #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)) kx #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal 1 binary64))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) (*.f64 kx (*.f64 #s(literal -1/2 binary64) kx)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 1 binary64))
(fma.f64 kx (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))) (/.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))))
(-.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64))) (pow.f64 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) (*.f64 #s(literal -1/2 binary64) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal -1/2 binary64)) kx))
(*.f64 #s(literal -1/2 binary64) kx)
(*.f64 kx #s(literal -1/2 binary64))
(*.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 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) (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 th) (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) #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 (*.f64 (sin.f64 th) (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)) (*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (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)))
(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 ky))) #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 (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 (neg.f64 (*.f64 (sin.f64 th) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (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) (sin.f64 ky))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #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 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 #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 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 (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 (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 #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))))))
(pow.f64 (/.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)) #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 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 (/.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 #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 (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 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 (/.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 #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)))
(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)))))))
(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 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #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)))
(*.f64 #s(literal 1 binary64) (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)))
(sin.f64 ky)
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal -1 binary64)))
(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)))) (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))) (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) (sqrt.f64 (/.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 #s(literal 1 binary64) (sqrt.f64 (/.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))))))
(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 (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))) (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)))
(pow.f64 (/.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) #s(literal -1 binary64))
(pow.f64 (/.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))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) #s(literal -1 binary64))
(/.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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (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 (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))))) (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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))
(/.f64 #s(literal 1 binary64) (/.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))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) 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 (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)))
#s(approx (/ kx (pow (sin ky) 2)) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))
(*.f64 (/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))) (*.f64 ky ky)) (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky)))))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) ky) (/.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)) #s(literal -1 binary64)) ky))
(*.f64 (/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) ky) (/.f64 (pow.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))) #s(literal -1 binary64)) ky))
(*.f64 (/.f64 #s(literal -1 binary64) ky) (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (neg.f64 ky)))
(*.f64 (pow.f64 (/.f64 (*.f64 ky ky) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 ky ky) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64)))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 (pow.f64 ky #s(literal -1 binary64)) (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky))
(*.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky) (pow.f64 ky #s(literal -1 binary64)))
(*.f64 (pow.f64 ky #s(literal -2 binary64)) (pow.f64 (pow.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))
(*.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) (pow.f64 (*.f64 (neg.f64 ky) ky) #s(literal -1 binary64)))
(*.f64 (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (pow.f64 ky #s(literal -2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 ky #s(literal -2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))
(pow.f64 (/.f64 ky (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) (pow.f64 ky #s(literal -2 binary64)))) (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) (pow.f64 ky #s(literal -2 binary64)))) (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) #s(literal 1 binary64))) (*.f64 (neg.f64 ky) ky))
(/.f64 (neg.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky))) (neg.f64 (neg.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))) (neg.f64 (neg.f64 (*.f64 (neg.f64 ky) ky))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) #s(literal 1 binary64))) (neg.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)) (*.f64 ky ky))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))) (*.f64 ky ky))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) (pow.f64 ky #s(literal -2 binary64))) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) (pow.f64 ky #s(literal -2 binary64))) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))))
(/.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) #s(literal 1 binary64)) (*.f64 ky ky))
(/.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky)) (neg.f64 ky))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) (neg.f64 (*.f64 (neg.f64 ky) ky)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx))) (neg.f64 (*.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64)))) (neg.f64 (*.f64 (*.f64 ky ky) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)) (*.f64 ky ky)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky))))) (*.f64 ky ky)))
(/.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky) ky)
(/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 (neg.f64 kx) kx)) (*.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx))))
(/.f64 (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) (pow.f64 kx #s(literal 3 binary64))) (*.f64 (*.f64 ky ky) (fma.f64 (pow.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) #s(literal 2 binary64)) (pow.f64 ky #s(literal 4 binary64)) (*.f64 kx (-.f64 kx (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) (*.f64 (neg.f64 ky) ky))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 ky (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))))
(/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 ky (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx)) (*.f64 ky ky)))
(neg.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 (neg.f64 ky) ky)))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky)) #s(literal 2 binary64)) (*.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)))) (/.f64 (*.f64 kx kx) (*.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (neg.f64 ky) ky)) (/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 (neg.f64 ky) ky)))
(-.f64 (/.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky)) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx))) (*.f64 ky ky)) (/.f64 (/.f64 (*.f64 kx kx) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) (neg.f64 kx))) (*.f64 ky ky)))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 ky ky) (fma.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) #s(literal -2/189 binary64)) kx (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) (/.f64 kx (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 kx (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(*.f64 (/.f64 kx (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (*.f64 kx (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (/.f64 (sin.f64 ky) kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 kx (sin.f64 ky)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) kx))
(*.f64 (neg.f64 kx) (pow.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) (pow.f64 (pow.f64 kx #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx)
(*.f64 kx (pow.f64 (sin.f64 ky) #s(literal -2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx))
(pow.f64 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 kx (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 kx #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (/.f64 kx (sin.f64 ky)) (sin.f64 ky))
(/.f64 (*.f64 kx #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 kx)) (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 kx) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx)))
(/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx))
(neg.f64 (/.f64 (neg.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(neg.f64 (/.f64 kx (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 kx (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 ky))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal -2 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal -1 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -2 binary64)))
(pow.f64 (exp.f64 #s(literal -2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal -1 binary64))
(pow.f64 (sin.f64 ky) #s(literal -2 binary64))
(/.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (neg.f64 (sin.f64 ky)))
(/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (sin.f64 ky))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
#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 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 2 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 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (+.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) (pow.f64 (cos.f64 kx) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 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 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #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 (/.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 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 6 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(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 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)))

eval169.0ms (1.8%)

Memory
-1.5MiB live, 203.2MiB allocated
Compiler

Compiled 27 934 to 3 470 computations (87.6% saved)

prune78.0ms (0.8%)

Memory
-8.9MiB live, 150.9MiB allocated
Pruning

60 alts after pruning (53 fresh and 7 done)

PrunedKeptTotal
New69711708
Fresh54247
Picked235
Done145
Total70560765
Accuracy
100.0%
Counts
765 → 60
Alt Table
Click to see full alt table
StatusAccuracyProgram
55.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.2%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
74.3%
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
72.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
94.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
71.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
45.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
38.3%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
71.2%
(/.f64 (sin.f64 th) (/.f64 (/.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)))
99.6%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
31.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
50.8%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.2%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
94.5%
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))))
70.8%
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
71.2%
(*.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))
17.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
48.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
82.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
39.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
54.1%
(*.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))
43.7%
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.6%
(*.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))
33.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
34.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
71.2%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (/.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))) (sin.f64 th))
31.7%
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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))
17.2%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th)))
32.9%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
33.0%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
34.5%
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
14.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 th))
14.4%
(*.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 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
26.9%
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
26.1%
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
24.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
16.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
17.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
22.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
21.4%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
31.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
17.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
18.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
3.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
2.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
55.4%
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
43.2%
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
33.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
17.5%
#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)))
17.5%
#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)))
17.5%
#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)))
17.5%
#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)))
17.5%
#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)))
14.6%
#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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
10.3%
#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.6%
#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 863 to 1 644 computations (57.4% saved)

regimes218.0ms (2.3%)

Memory
-15.3MiB live, 345.0MiB allocated
Counts
85 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) 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 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 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 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 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) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
(/.f64 (sin.f64 th) (/.f64 (/.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 #s(literal 1 binary64) (/.f64 (/.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))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.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 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (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 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (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 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (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 (pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

30.0ms
kx
25.0ms
(sin.f64 th)
24.0ms
(sin.f64 kx)
24.0ms
(sin.f64 ky)
24.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Results
AccuracySegmentsBranch
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)

regimes195.0ms (2.1%)

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

9 calls:

46.0ms
kx
28.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))
19.0ms
th
18.0ms
(sin.f64 ky)
16.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
79.3%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))
80.7%4(sin.f64 th)
91.2%2kx
99.3%2ky
82.3%4th
99.6%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
99.3%3(sin.f64 ky)
91.2%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
91.2%3(sin.f64 kx)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes22.0ms (0.2%)

Memory
-1.5MiB live, 35.1MiB allocated
Counts
60 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) 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 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 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 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 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))
Calls

1 calls:

19.0ms
ky
Results
AccuracySegmentsBranch
99.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes101.0ms (1.1%)

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

6 calls:

19.0ms
(sin.f64 ky)
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)))))
16.0ms
kx
16.0ms
(sin.f64 kx)
15.0ms
ky
Results
AccuracySegmentsBranch
75.5%4(sin.f64 kx)
70.8%2kx
70.8%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
89.0%6(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
82.7%4(sin.f64 ky)
80.8%3ky
Compiler

Compiled 23 to 31 computations (-34.8% saved)

regimes16.0ms (0.2%)

Memory
18.9MiB live, 18.9MiB allocated
Counts
52 → 6
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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) 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 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.2%)

Memory
-25.9MiB live, 19.4MiB allocated
Counts
49 → 6
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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes15.0ms (0.2%)

Memory
21.4MiB live, 21.4MiB allocated
Counts
48 → 6
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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes29.0ms (0.3%)

Memory
-13.8MiB live, 25.0MiB allocated
Counts
47 → 6
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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes97.0ms (1%)

Memory
13.1MiB live, 134.8MiB allocated
Counts
44 → 6
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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.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) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

19.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))
15.0ms
(sin.f64 ky)
13.0ms
th
12.0ms
(sin.f64 th)
12.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
69.0%4(sin.f64 kx)
65.1%3(sin.f64 th)
62.6%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))
64.8%3th
69.5%4ky
71.8%5(sin.f64 ky)
77.9%6(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 37 to 42 computations (-13.5% saved)

regimes50.0ms (0.5%)

Memory
12.9MiB live, 88.1MiB allocated
Counts
43 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #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) (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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #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

4 calls:

13.0ms
kx
12.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
11.0ms
(sin.f64 ky)
10.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
70.0%4(sin.f64 ky)
66.9%3kx
66.8%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
70.1%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 20 to 24 computations (-20% saved)

regimes31.0ms (0.3%)

Memory
-36.6MiB live, 44.2MiB allocated
Counts
42 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Outputs
(*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

13.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
11.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
63.1%4(sin.f64 ky)
68.1%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 15 to 15 computations (0% saved)

regimes110.0ms (1.2%)

Memory
9.5MiB live, 202.0MiB allocated
Counts
41 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) #s(approx (* (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -2 binary64)) kx) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (sin.f64 th))
(*.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 #s(literal -1/2 binary64) kx) (/.f64 kx (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 #s(approx (* (/ 1/2 (sin kx)) ky) (*.f64 (/.f64 ky kx) #s(literal 1/2 binary64))) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (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

9 calls:

16.0ms
(sin.f64 ky)
13.0ms
th
13.0ms
ky
12.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
11.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
46.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
52.9%3(sin.f64 ky)
40.0%2th
38.3%1(sin.f64 th)
51.6%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
51.6%3kx
55.2%4(sin.f64 kx)
51.7%3ky
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 42 to 51 computations (-21.4% saved)

regimes9.0ms (0.1%)

Memory
30.3MiB live, 30.3MiB allocated
Counts
28 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) #s(approx (/ (+ (* (+ (* (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (* ky ky)) (* 1/3 kx)) (* ky ky)) kx) (* ky ky)) (*.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) kx) #s(literal 2/189 binary64)))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))) (sin.f64 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 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) 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 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))))))
(*.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 #s(approx (pow (sin ky) 2) (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)))) #s(literal 1 binary64))) (sin.f64 th))
Outputs
(/.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)) (sin.f64 th))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes8.0ms (0.1%)

Memory
-26.0MiB live, 13.1MiB allocated
Counts
20 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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))
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

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes53.0ms (0.6%)

Memory
10.3MiB live, 92.5MiB allocated
Counts
19 → 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) (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)))
#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))))))
(*.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 #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 kx ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 ky ky (*.f64 (*.f64 kx kx) (fma.f64 (*.f64 #s(literal -1/6 binary64) ky) ky #s(literal -1/2 binary64)))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 1/3 binary64) kx) ky) ky)) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 kx (fma.f64 (*.f64 ky ky) #s(literal 1/15 binary64) #s(literal 1/3 binary64))) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx (fma.f64 #s(literal -1/15 binary64) (*.f64 ky ky) #s(literal -1/3 binary64))) ky)) ky kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) #s(approx (+ (* (* -1/2 kx) (/ kx (pow (sin ky) 2))) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) ky) ky (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 #s(approx (+ (* (neg ky) (* ky (* kx -2/189))) (* 1/15 kx)) (*.f64 (*.f64 (*.f64 ky ky) kx) #s(literal 2/189 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) #s(approx (/ kx (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 ky) (*.f64 ky (*.f64 kx #s(literal -2/189 binary64))) (*.f64 #s(literal 1/15 binary64) kx)) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) kx)) (*.f64 ky ky) kx) (*.f64 ky ky))) #s(literal 1 binary64))) (sin.f64 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
#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

9 calls:

7.0ms
th
6.0ms
ky
5.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
5.0ms
(sin.f64 th)
5.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
33.1%1(sin.f64 th)
33.1%1th
39.5%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
35.6%2kx
35.9%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
35.5%2ky
35.8%2(sin.f64 ky)
34.9%2(sin.f64 kx)
39.6%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes17.0ms (0.2%)

Memory
-8.2MiB live, 30.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:

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

regimes18.0ms (0.2%)

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

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

Compiled 42 to 51 computations (-21.4% saved)

bsearch24.0ms (0.3%)

Memory
29.5MiB live, 29.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
22.0ms
2.5708331454565412e-5
0.006665250285043252
Samples
16.0ms128×0valid
Compiler

Compiled 403 to 330 computations (18.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-sin: 7.0ms (57% of total)
ival-pow2: 2.0ms (16.3% of total)
ival-div: 1.0ms (8.1% of total)
ival-add: 1.0ms (8.1% of total)
ival-mult: 1.0ms (8.1% of total)
ival-sqrt: 1.0ms (8.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
4.4MiB live, 4.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
2.5708331454565412e-5
0.006665250285043252
Compiler

Compiled 403 to 330 computations (18.1% saved)

bsearch3.0ms (0%)

Memory
-34.9MiB live, 3.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000001374971423
+inf
0.0ms
0.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
4.3MiB live, 4.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000001374971423
+inf
0.0ms
0.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000001374971423
+inf
0.0ms
0.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000001374971423
+inf
0.0ms
0.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.0000001374971423
0.0ms
0.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
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.8897602199186027
0.9564538840447415
0.0ms
3.1535198192798506e-5
0.006665151230996695
0.0ms
1.0303298426409424e-62
2.676836580970609e-57
0.0ms
-0.06253214065126253
1.9886791690871937e-301
0.0ms
-0.9921595732570195
-0.9125938432783929
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.49989170268104643
0.6031491485696588
0.0ms
1.0303298426409424e-62
2.676836580970609e-57
0.0ms
-0.711152836293544
-0.7086308021820809
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.49989170268104643
0.6031491485696588
0.0ms
-0.9115769525017368
-0.874385215429598
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.49989170268104643
0.6031491485696588
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.006665151230996695
0.0720325809617076
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.006665151230996695
0.0720325809617076
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
7.55972652091909e-107
4.838152575715388e-105
Compiler

Compiled 19 to 19 computations (0% saved)

simplify100.0ms (1.1%)

Memory
-1.3MiB live, 46.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01741765
12081765
22411765
32761765
42951765
53251765
64601765
742881765
861931765
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 5764607523034235/4611686018427387904 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))))
(if (<=.f64 ky #s(literal 5764607523034235/4611686018427387904 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 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 -4278419646001971/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 578960446186581/28948022309329048855892746252171976963317496166410141009864396001978282409984 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)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -799388933858263/1125899906842624 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 578960446186581/28948022309329048855892746252171976963317496166410141009864396001978282409984 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)) (if (<=.f64 (/.f64 (sin.f64 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/2 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 -8106479329266893/9007199254740992 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 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 1/2 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 5764607523034235/576460752303423488 binary64)) (/.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)) (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 #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 8263199609878107/82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032 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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 5764607523034235/4611686018427387904 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))))
(if (<=.f64 ky #s(literal 5764607523034235/4611686018427387904 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 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 -4278419646001971/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (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 -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -4278419646001971/4503599627370496 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 578960446186581/28948022309329048855892746252171976963317496166410141009864396001978282409984 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)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -799388933858263/1125899906842624 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 578960446186581/28948022309329048855892746252171976963317496166410141009864396001978282409984 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)) (if (<=.f64 (/.f64 (sin.f64 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/2 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 -8106479329266893/9007199254740992 binary64)) (*.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) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 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 1/2 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 5764607523034235/576460752303423488 binary64)) (/.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)) (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 #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 8263199609878107/82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032 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)))

soundness1.7s (17.6%)

Memory
14.4MiB live, 943.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059453
0102424
1358421
22346421
08192418
01349
02249
16249
234449
3297849
0826034
05062186
116272090
260971964
084111828
05302928
117332772
269082660
080272517
041226
068211
1244211
21512211
08357211
03171402
110111353
238651261
378121261
081151188
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 3 203 to 1 134 computations (64.6% saved)

preprocess113.0ms (1.2%)

Memory
29.1MiB live, 224.3MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 3 636 to 436 computations (88% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...