Migdal et al, Equation (64)

Time bar (total: 7.7s)

start0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage

analyze1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 21 to 14 computations (33.3% saved)

sample1.1s (14.7%)

Memory
37.7MiB live, 1 928.2MiB allocated; 253ms collecting garbage
Samples
797.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 565.0ms
ival-cos: 205.0ms (36.3% of total)
ival-mult: 202.0ms (35.7% of total)
ival-sqrt: 58.0ms (10.3% of total)
ival-div: 48.0ms (8.5% of total)
ival-add: 35.0ms (6.2% of total)
ival-true: 6.0ms (1.1% of total)
exact: 6.0ms (1.1% of total)
ival-assert: 3.0ms (0.5% of total)
adjust: 2.0ms (0.4% of total)
Bogosity

explain302.0ms (3.9%)

Memory
5.1MiB live, 288.3MiB allocated; 84ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-a1
00-0-(*.f64 a1 a1)
00-0-(sqrt.f64 #s(literal 2 binary64))
00-0-th
00-0-#s(literal 2 binary64)
00-0-(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
00-0-(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
00-0-(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
00-0-(*.f64 a2 a2)
00-0-(cos.f64 th)
00-0-(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
00-0-a2
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
52.0ms512×0valid
Compiler

Compiled 135 to 40 computations (70.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 34.0ms
ival-mult: 12.0ms (35.8% of total)
ival-cos: 12.0ms (35.8% of total)
ival-sqrt: 4.0ms (11.9% of total)
ival-div: 3.0ms (8.9% of total)
ival-add: 2.0ms (6% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess245.0ms (3.2%)

Memory
-2.9MiB live, 234.6MiB allocated; 21ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040120
1163120
2593120
31539120
43028120
54447120
67176120
01219
02013
15213
217413
355113
4111213
5170613
6309013
7718313
0810012
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
Symmetry

(abs th)

(abs a2)

(abs a1)

(sort a1 a2)

Compiler

Compiled 19 to 12 computations (36.8% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
Compiler

Compiled 19 to 12 computations (36.8% saved)

simplify167.0ms (2.2%)

Memory
-14.3MiB live, 170.4MiB allocated; 28ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cos.f64 th)
cost-diff0
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
cost-diff7
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01256
02050
15250
217450
355150
4111250
5170650
6309050
7718350
0810049
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 a1 a1)
a1
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 a2 a2)
a2
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (cos.f64 th)))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 a1 a1)
a1
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)))
(*.f64 a2 a2)
a2

localize49.0ms (0.6%)

Memory
14.7MiB live, 112.1MiB allocated; 13ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(cos.f64 th)
accuracy0.18359375
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
accuracy0.205410009768442
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
accuracy0.709316259768442
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Samples
39.0ms256×0valid
Compiler

Compiled 58 to 14 computations (75.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 6.0ms (36.4% of total)
ival-cos: 6.0ms (36.4% of total)
ival-sqrt: 2.0ms (12.1% of total)
ival-div: 1.0ms (6.1% of total)
ival-add: 1.0ms (6.1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series19.0ms (0.2%)

Memory
-1.2MiB live, 44.5MiB allocated; 5ms collecting garbage
Counts
5 → 27
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/ (pow a1 2) (sqrt 2))
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(/ (pow a2 2) (sqrt 2))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ (cos th) (sqrt 2))
(cos th)
Calls

9 calls:

TimeVariablePointExpression
4.0ms
a1
@-inf
((+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (/ (cos th) (sqrt 2)) (* a1 a1)) (/ (cos th) (sqrt 2)) (cos th) (* (/ (cos th) (sqrt 2)) (* a2 a2)))
3.0ms
th
@-inf
((+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (/ (cos th) (sqrt 2)) (* a1 a1)) (/ (cos th) (sqrt 2)) (cos th) (* (/ (cos th) (sqrt 2)) (* a2 a2)))
2.0ms
a1
@0
((+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (/ (cos th) (sqrt 2)) (* a1 a1)) (/ (cos th) (sqrt 2)) (cos th) (* (/ (cos th) (sqrt 2)) (* a2 a2)))
2.0ms
th
@0
((+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (/ (cos th) (sqrt 2)) (* a1 a1)) (/ (cos th) (sqrt 2)) (cos th) (* (/ (cos th) (sqrt 2)) (* a2 a2)))
2.0ms
th
@inf
((+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (/ (cos th) (sqrt 2)) (* a1 a1)) (/ (cos th) (sqrt 2)) (cos th) (* (/ (cos th) (sqrt 2)) (* a2 a2)))

simplify202.0ms (2.6%)

Memory
-14.6MiB live, 269.7MiB allocated; 76ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0111543
1388508
21781439
36410424
08448385
Stop Event
iter limit
node limit
Counts
27 → 27
Calls
Call 1
Inputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/ (pow a1 2) (sqrt 2))
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(/ (pow a2 2) (sqrt 2))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ (cos th) (sqrt 2))
(cos th)
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(fma.f64 (*.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (*.f64 th th)) (*.f64 th th)))
(/ (pow a1 2) (sqrt 2))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (*.f64 a1 a1) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (*.f64 a1 a1) (*.f64 (*.f64 (*.f64 a1 a1) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (pow.f64 th #s(literal 4 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(/ 1 (sqrt 2))
(/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (*.f64 th th) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow th 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(/ (pow a2 2) (sqrt 2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 a2) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (*.f64 a2 a2) (*.f64 (*.f64 (*.f64 a2 a2) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (pow.f64 th #s(literal 4 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(/ (cos th) (sqrt 2))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos th)
(cos.f64 th)

rewrite43.0ms (0.6%)

Memory
19.2MiB live, 65.2MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
02038
17238
051437
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
5 → 80
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
Outputs
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1)))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a2 a2 (*.f64 a1 a1))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (fma.f64 (*.f64 (cos.f64 th) a2) a2 (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (*.f64 (cos.f64 th) a2) a2)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a2) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a2) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a1) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a1 (/.f64 (*.f64 (cos.f64 th) a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (cos.f64 th) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (cos.f64 th) (/.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a1) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))) a2))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a1) (sqrt.f64 #s(literal 2 binary64))) a1)
(*.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a1 (/.f64 (*.f64 (cos.f64 th) a1) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(*.f64 (cos.f64 th) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a1 a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a1 a1) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 th) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))
(cos.f64 (neg.f64 (neg.f64 th)))
(cos.f64 (neg.f64 th))
(cos.f64 th)
(+.f64 (*.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2)
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (cos.f64 th) (/.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 th) a2) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (cos.f64 th) a2) a2) (sqrt.f64 #s(literal 2 binary64)))

eval18.0ms (0.2%)

Memory
-10.2MiB live, 35.5MiB allocated; 7ms collecting garbage
Compiler

Compiled 3 415 to 390 computations (88.6% saved)

prune9.0ms (0.1%)

Memory
24.7MiB live, 24.7MiB allocated; 0ms collecting garbage
Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New11810128
Fresh000
Picked101
Done000
Total11910129
Accuracy
99.8%
Counts
129 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
25.5%
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
16.9%
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
99.6%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
99.4%
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.5%
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
64.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
56.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
63.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
Compiler

Compiled 612 to 342 computations (44.1% saved)

simplify165.0ms (2.1%)

Memory
-18.5MiB live, 265.1MiB allocated; 47ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff3
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
cost-diff3
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
cost-diff4
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
cost-diff7
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
cost-diff0
(fma.f64 a2 a2 (*.f64 a1 a1))
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
cost-diff0
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) a2)
cost-diff0
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
(*.f64 a1 a1)
cost-diff0
(fma.f64 a2 a2 (*.f64 a1 a1))
cost-diff0
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) a2)
cost-diff0
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
cost-diff6
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040329
066261
1149243
2465243
31484243
44304243
08595243
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) a2)
(cos.f64 th)
th
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a1 a1)
a1
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) a2)
(cos.f64 th)
th
a2
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 a1 a1)
a1
(*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 th)
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
(*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(*.f64 a2 a2)
a2
Outputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (cos.f64 th) a2)
(*.f64 a2 (cos.f64 th))
(cos.f64 th)
th
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (cos.f64 th)))
(*.f64 a1 a1)
a1
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(*.f64 (cos.f64 th) a2)
(*.f64 a2 (cos.f64 th))
(cos.f64 th)
th
a2
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (cos.f64 th)))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 a1 a1)
a1
(*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 th)
(sin.f64 th)
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
#s(literal 0 binary64)
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
(*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 th)
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
#s(literal 1 binary64)
(*.f64 a2 a2)
a2

localize1.5s (19.7%)

Memory
60.0MiB live, 2 570.2MiB allocated; 460ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.205410009768442
(*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
accuracy0.709316259768442
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.709316259768442
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
accuracy61.920506293690316
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.00390625
(cos.f64 th)
accuracy0.07650375976844201
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
accuracy0.27181625976844204
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.12890625
(*.f64 (cos.f64 th) a2)
accuracy0.14504223031768437
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.1875
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
accuracy0.5
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
accuracy0.0
(*.f64 a1 a1)
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.25
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
accuracy22.65346080546251
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.1796875
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.18359375
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.48666000976844204
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.709316259768442
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Samples
1.5s256×2valid
Compiler

Compiled 321 to 36 computations (88.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-sin: 1.1s (76.7% of total)
ival-cos: 114.0ms (8% of total)
ival-mult: 84.0ms (5.9% of total)
adjust: 63.0ms (4.4% of total)
ival-div: 45.0ms (3.2% of total)
ival-add: 14.0ms (1% of total)
ival-pi: 7.0ms (0.5% of total)
ival-sqrt: 4.0ms (0.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series65.0ms (0.8%)

Memory
-12.5MiB live, 117.0MiB allocated; 34ms collecting garbage
Counts
22 → 82
Calls
Call 1
Inputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) a2)
(cos.f64 th)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
(*.f64 a1 a1)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(sqrt.f64 #s(literal 2 binary64))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(pow a2 2)
(+ (pow a1 2) (pow a2 2))
(pow a1 2)
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(/ (pow a1 2) (sqrt 2))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (* (pow a1 2) (sqrt 2)))))
(/ (* a2 (cos th)) (sqrt 2))
(* a2 (cos th))
(+ (* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)))) (/ (* (pow a1 2) (cos th)) (sqrt 2)))
(/ a2 (sqrt 2))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2))))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2))))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (/ (* a2 (pow th 2)) (sqrt 2))) (/ a2 (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* 1/24 (/ (* a2 (pow th 2)) (sqrt 2))))) (/ a2 (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* a2 (pow th 2)) (sqrt 2))) (* 1/24 (/ a2 (sqrt 2))))))) (/ a2 (sqrt 2)))
a2
(+ a2 (* -1/2 (* a2 (pow th 2))))
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* 1/24 (* a2 (pow th 2))))))
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* (pow th 2) (+ (* -1/720 (* a2 (pow th 2))) (* 1/24 a2))))))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/2 (/ (pow a1 2) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(sin (* 1/2 (PI)))
(+ (sin (* 1/2 (PI))) (* th (cos (* 1/2 (PI)))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* -1/2 (* th (sin (* 1/2 (PI))))))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* th (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* th (cos (* 1/2 (PI))))))))))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(/ (sin (* 1/2 (PI))) (sqrt 2))
(+ (/ (sin (* 1/2 (PI))) (sqrt 2)) (/ (* th (cos (* 1/2 (PI)))) (sqrt 2)))
(+ (* th (+ (* -1/2 (/ (* th (sin (* 1/2 (PI)))) (sqrt 2))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(+ (* th (+ (* th (+ (* -1/2 (/ (sin (* 1/2 (PI))) (sqrt 2))) (* -1/6 (/ (* th (cos (* 1/2 (PI)))) (sqrt 2))))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))
(+ (* th (+ (* -1/2 (/ (* (pow a2 2) (* th (sin (* 1/2 (PI))))) (sqrt 2))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(cos th)
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))
(/ (cos th) (sqrt 2))
(/ (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th))) (sqrt 2))
Calls

9 calls:

TimeVariablePointExpression
15.0ms
th
@inf
((+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/ (* (cos th) a2) (sqrt 2)) (* (cos th) a2) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (+ (* a2 a2) (* a1 a1)) (* a1 a1) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (* (cos th) a2) (/ a2 (sqrt 2))) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (sqrt 2)) (* (cos th) (+ (* a2 a2) (* a1 a1))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2))) (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (sin (/ (PI) 2)) (/ (cos th) (sqrt 2)) (* (* a1 a1) (/ (cos th) (sqrt 2))) (sqrt 2) (/ a2 (sqrt 2)) (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2)))
13.0ms
a2
@inf
((+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/ (* (cos th) a2) (sqrt 2)) (* (cos th) a2) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (+ (* a2 a2) (* a1 a1)) (* a1 a1) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (* (cos th) a2) (/ a2 (sqrt 2))) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (sqrt 2)) (* (cos th) (+ (* a2 a2) (* a1 a1))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2))) (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (sin (/ (PI) 2)) (/ (cos th) (sqrt 2)) (* (* a1 a1) (/ (cos th) (sqrt 2))) (sqrt 2) (/ a2 (sqrt 2)) (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2)))
10.0ms
a1
@0
((+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/ (* (cos th) a2) (sqrt 2)) (* (cos th) a2) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (+ (* a2 a2) (* a1 a1)) (* a1 a1) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (* (cos th) a2) (/ a2 (sqrt 2))) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (sqrt 2)) (* (cos th) (+ (* a2 a2) (* a1 a1))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2))) (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (sin (/ (PI) 2)) (/ (cos th) (sqrt 2)) (* (* a1 a1) (/ (cos th) (sqrt 2))) (sqrt 2) (/ a2 (sqrt 2)) (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2)))
5.0ms
th
@-inf
((+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/ (* (cos th) a2) (sqrt 2)) (* (cos th) a2) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (+ (* a2 a2) (* a1 a1)) (* a1 a1) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (* (cos th) a2) (/ a2 (sqrt 2))) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (sqrt 2)) (* (cos th) (+ (* a2 a2) (* a1 a1))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2))) (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (sin (/ (PI) 2)) (/ (cos th) (sqrt 2)) (* (* a1 a1) (/ (cos th) (sqrt 2))) (sqrt 2) (/ a2 (sqrt 2)) (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2)))
5.0ms
a2
@0
((+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/ (* (cos th) a2) (sqrt 2)) (* (cos th) a2) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (+ (* a2 a2) (* a1 a1)) (* a1 a1) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (* (cos th) a2) (/ a2 (sqrt 2))) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (sqrt 2)) (* (cos th) (+ (* a2 a2) (* a1 a1))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2))) (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (sin (/ (PI) 2)) (/ (cos th) (sqrt 2)) (* (* a1 a1) (/ (cos th) (sqrt 2))) (sqrt 2) (/ a2 (sqrt 2)) (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* (/ (+ (* (sin th) (cos (/ (PI) 2))) (* (cos th) (sin (/ (PI) 2)))) (sqrt 2)) (* a2 a2)))

simplify1.0s (13%)

Memory
-95.4MiB live, 578.8MiB allocated; 1.2s collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02851739
110501549
247221507
083941385
Stop Event
iter limit
node limit
Counts
82 → 81
Calls
Call 1
Inputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(pow a2 2)
(+ (pow a1 2) (pow a2 2))
(pow a1 2)
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(/ (pow a1 2) (sqrt 2))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (* (pow a1 2) (sqrt 2)))))
(/ (* a2 (cos th)) (sqrt 2))
(* a2 (cos th))
(+ (* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)))) (/ (* (pow a1 2) (cos th)) (sqrt 2)))
(/ a2 (sqrt 2))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2))))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2))))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (/ (* a2 (pow th 2)) (sqrt 2))) (/ a2 (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* 1/24 (/ (* a2 (pow th 2)) (sqrt 2))))) (/ a2 (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* a2 (pow th 2)) (sqrt 2))) (* 1/24 (/ a2 (sqrt 2))))))) (/ a2 (sqrt 2)))
a2
(+ a2 (* -1/2 (* a2 (pow th 2))))
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* 1/24 (* a2 (pow th 2))))))
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* (pow th 2) (+ (* -1/720 (* a2 (pow th 2))) (* 1/24 a2))))))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/2 (/ (pow a1 2) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(sin (* 1/2 (PI)))
(+ (sin (* 1/2 (PI))) (* th (cos (* 1/2 (PI)))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* -1/2 (* th (sin (* 1/2 (PI))))))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* th (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* th (cos (* 1/2 (PI))))))))))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(/ (sin (* 1/2 (PI))) (sqrt 2))
(+ (/ (sin (* 1/2 (PI))) (sqrt 2)) (/ (* th (cos (* 1/2 (PI)))) (sqrt 2)))
(+ (* th (+ (* -1/2 (/ (* th (sin (* 1/2 (PI)))) (sqrt 2))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(+ (* th (+ (* th (+ (* -1/2 (/ (sin (* 1/2 (PI))) (sqrt 2))) (* -1/6 (/ (* th (cos (* 1/2 (PI)))) (sqrt 2))))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))
(+ (* th (+ (* -1/2 (/ (* (pow a2 2) (* th (sin (* 1/2 (PI))))) (sqrt 2))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(cos th)
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))
(/ (cos th) (sqrt 2))
(/ (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th))) (sqrt 2))
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/ (pow a2 2) (sqrt 2))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(pow a2 2)
(*.f64 a2 a2)
(+ (pow a1 2) (pow a2 2))
(fma.f64 a1 a1 (*.f64 a2 a2))
(pow a1 2)
(*.f64 a1 a1)
(* (pow a2 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a2) a2)
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2))
(/.f64 (*.f64 (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1))
(/ (pow a1 2) (sqrt 2))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(/.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))
(* (pow a1 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a1) a1)
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(*.f64 (fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) a1) (/.f64 a2 a1) (cos.f64 th)) (*.f64 a1 a1))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))) (* (pow a1 2) (sqrt 2)))))
(*.f64 (/.f64 (fma.f64 (*.f64 (/.f64 a2 a1) (/.f64 a2 a1)) (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/ (* a2 (cos th)) (sqrt 2))
(*.f64 (cos.f64 th) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(* a2 (cos th))
(*.f64 (cos.f64 th) a2)
(+ (* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)))) (/ (* (pow a1 2) (cos th)) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(/ a2 (sqrt 2))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 a2))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(/.f64 (*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (*.f64 a2 a2))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(*.f64 (fma.f64 (/.f64 (*.f64 (cos.f64 th) a1) a2) (/.f64 a1 a2) (cos.f64 th)) (*.f64 a2 a2))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2))))
(/.f64 (*.f64 (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow a2 2) (+ (/ (* (cos th) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (cos (* 1/2 (PI))) (sin th)) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2))))))
(*.f64 (/.f64 (fma.f64 (*.f64 (/.f64 a1 a2) (/.f64 a1 a2)) (cos.f64 th) (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* -1/2 (/ (* a2 (pow th 2)) (sqrt 2))) (/ a2 (sqrt 2)))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* 1/24 (/ (* a2 (pow th 2)) (sqrt 2))))) (/ a2 (sqrt 2)))
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 th th) a2) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) a2)) (*.f64 th th) a2) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ a2 (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* a2 (pow th 2)) (sqrt 2))) (* 1/24 (/ a2 (sqrt 2))))))) (/ a2 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 (*.f64 th th) a2) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) a2)) th) th (*.f64 #s(literal -1/2 binary64) a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
a2
(+ a2 (* -1/2 (* a2 (pow th 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* 1/24 (* a2 (pow th 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 th th) a2) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) a2)) (*.f64 th th) a2)
(+ a2 (* (pow th 2) (+ (* -1/2 a2) (* (pow th 2) (+ (* -1/720 (* a2 (pow th 2))) (* 1/24 a2))))))
(fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 (*.f64 th th) a2) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) a2)) th) th (*.f64 #s(literal -1/2 binary64) a2)) (*.f64 th th) a2)
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow th 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal 1/24 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) a2) a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(+.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/720 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) a2) a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)))))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 a2 a2) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (+ (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(/.f64 (fma.f64 (*.f64 a2 a2) (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/2 (/ (pow a1 2) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) th) (/.f64 (fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 a2 a2) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) th (/.f64 (fma.f64 (*.f64 a2 a2) (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (pow a1 2) (sqrt 2))))
(fma.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 a2 a2) th)) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/2 binary64) (fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 a2 a2) (*.f64 a1 a1)))) (sqrt.f64 #s(literal 2 binary64))) th) th (/.f64 (fma.f64 (*.f64 a2 a2) (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(sin (* 1/2 (PI)))
(sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(+ (sin (* 1/2 (PI))) (* th (cos (* 1/2 (PI)))))
(fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* -1/2 (* th (sin (* 1/2 (PI))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) th) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(+ (sin (* 1/2 (PI))) (* th (+ (cos (* 1/2 (PI))) (* th (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* th (cos (* 1/2 (PI))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) th (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(/ 1 (sqrt 2))
(/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -1/2 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a1 a1)) (*.f64 th th) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))))) (/ (pow a1 2) (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (*.f64 th th) (*.f64 #s(literal 1/24 binary64) (*.f64 a1 a1)) (*.f64 #s(literal -1/2 binary64) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a1 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a1 2) (sqrt 2))))))) (/ (pow a1 2) (sqrt 2)))
(+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a1 a1)) (*.f64 th th) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/720 binary64) (*.f64 a1 a1)) (*.f64 #s(literal 1/24 binary64) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))))
(/ (sin (* 1/2 (PI))) (sqrt 2))
(/.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(+ (/ (sin (* 1/2 (PI))) (sqrt 2)) (/ (* th (cos (* 1/2 (PI)))) (sqrt 2)))
(/.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* th (+ (* -1/2 (/ (* th (sin (* 1/2 (PI)))) (sqrt 2))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) th) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) th (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* th (+ (* th (+ (* -1/2 (/ (sin (* 1/2 (PI))) (sqrt 2))) (* -1/6 (/ (* th (cos (* 1/2 (PI)))) (sqrt 2))))) (/ (cos (* 1/2 (PI))) (sqrt 2)))) (/ (sin (* 1/2 (PI))) (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) th (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64)))) (sqrt.f64 #s(literal 2 binary64))) th (/.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))
(/.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)) (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2)))
(*.f64 (*.f64 a2 a2) (/.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* th (+ (* -1/2 (/ (* (pow a2 2) (* th (sin (* 1/2 (PI))))) (sqrt 2))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 a2 a2) th)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) th (*.f64 (*.f64 a2 a2) (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* th (+ (* th (+ (* -1/2 (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2))) (* -1/6 (/ (* (pow a2 2) (* th (cos (* 1/2 (PI))))) (sqrt 2))))) (/ (* (pow a2 2) (cos (* 1/2 (PI)))) (sqrt 2)))) (/ (* (pow a2 2) (sin (* 1/2 (PI)))) (sqrt 2)))
(fma.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 a2 a2) th)) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) a2) a2) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) th) th (*.f64 (*.f64 a2 a2) (/.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) th (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(cos th)
(cos.f64 th)
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th)))
(fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th)))
(/ (cos th) (sqrt 2))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(/ (+ (* (cos th) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin th))) (sqrt 2))
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (*.f64 #s(literal -1/2 binary64) (PI.f64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 th))) (sqrt.f64 #s(literal 2 binary64)))

rewrite102.0ms (1.3%)

Memory
-4.2MiB live, 188.9MiB allocated; 19ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040248
066185
1250167
02152167
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
22 → 594
Calls
Call 1
Inputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) a2)
(cos.f64 th)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
(*.f64 a1 a1)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(sqrt.f64 #s(literal 2 binary64))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
Outputs
(*.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (cos.f64 th) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 a1) (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))) a2))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) a2)
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (neg.f64 (*.f64 (neg.f64 a2) (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 a2)) (*.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (neg.f64 a2)) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) a2) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a2 (cos.f64 th))
(*.f64 (cos.f64 th) a2)
(/.f64 (*.f64 a2 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 a2 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) a2) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) a2) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(fma.f64 #s(literal 0 binary64) a2 (*.f64 a2 (cos.f64 th)))
(fma.f64 a2 #s(literal 0 binary64) (*.f64 a2 (cos.f64 th)))
(fma.f64 a2 (cos.f64 th) (*.f64 #s(literal 0 binary64) a2))
(fma.f64 a2 (cos.f64 th) (*.f64 a2 #s(literal 0 binary64)))
(fma.f64 (cos.f64 th) a2 (*.f64 #s(literal 0 binary64) a2))
(fma.f64 (cos.f64 th) a2 (*.f64 a2 #s(literal 0 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) a2) (*.f64 a2 (cos.f64 th)))
(+.f64 (*.f64 a2 #s(literal 0 binary64)) (*.f64 a2 (cos.f64 th)))
(+.f64 (*.f64 a2 (cos.f64 th)) (*.f64 #s(literal 0 binary64) a2))
(+.f64 (*.f64 a2 (cos.f64 th)) (*.f64 a2 #s(literal 0 binary64)))
(*.f64 #s(literal 1 binary64) (cos.f64 th))
(*.f64 (cos.f64 th) #s(literal 1 binary64))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) #s(literal 1 binary64)) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (-.f64 (pow.f64 (cos.f64 th) #s(literal 2 binary64)) #s(literal 0 binary64)) (cos.f64 th))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (cos.f64 th)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (cos.f64 th) (cos.f64 th) (*.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th))))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (neg.f64 (cos.f64 th))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (neg.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(/.f64 (+.f64 (sin.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 th))) (sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 th)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th)) (cos.f64 th)) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))) (cos.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th) (/.f64 (PI.f64) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 (cos.f64 th)))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 0 binary64) (cos.f64 th)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 th) #s(literal 0 binary64))
(fma.f64 (sin.f64 th) #s(literal 0 binary64) (cos.f64 th))
(fma.f64 (cos.f64 th) #s(literal 1 binary64) #s(literal 0 binary64))
(sin.f64 (+.f64 (neg.f64 th) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th))) (/.f64 (pow.f64 (cos.f64 th) #s(literal 2 binary64)) (neg.f64 (cos.f64 th))))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -1 binary64) (cos.f64 th)))
(-.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th)))
(-.f64 (cos.f64 th) (*.f64 (neg.f64 (sin.f64 th)) #s(literal 0 binary64)))
(-.f64 (cos.f64 th) #s(literal 0 binary64))
(cos.f64 (neg.f64 (neg.f64 th)))
(cos.f64 (neg.f64 th))
(cos.f64 th)
(+.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))) (/.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 th))) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (cos.f64 th))
(+.f64 (cos.f64 th) #s(literal 0 binary64))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (-.f64 (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (*.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a1) (/.f64 (neg.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a1) (/.f64 (fabs.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (*.f64 (neg.f64 a1) a1) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(+.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 a2 #s(literal 4 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 6 binary64)) (pow.f64 (*.f64 (neg.f64 a1) a1) #s(literal 3 binary64))) (+.f64 (pow.f64 a2 #s(literal 4 binary64)) (+.f64 (pow.f64 a1 #s(literal 4 binary64)) (*.f64 (*.f64 a2 a2) (*.f64 (neg.f64 a1) a1)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (neg.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (+.f64 (pow.f64 a1 #s(literal 4 binary64)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(fma.f64 (neg.f64 (neg.f64 a1)) (neg.f64 (neg.f64 a1)) (*.f64 a2 a2))
(fma.f64 (neg.f64 (fabs.f64 a1)) (neg.f64 (fabs.f64 a1)) (*.f64 a2 a2))
(fma.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)) (*.f64 a1 a1))
(fma.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)) (*.f64 a1 a1))
(fma.f64 (fabs.f64 (fabs.f64 a1)) (fabs.f64 (fabs.f64 a1)) (*.f64 a2 a2))
(fma.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)) (*.f64 a1 a1))
(fma.f64 (pow.f64 a1 #s(literal 1 binary64)) (pow.f64 a1 #s(literal 1 binary64)) (*.f64 a2 a2))
(fma.f64 (pow.f64 a1 #s(literal 1 binary64)) a1 (*.f64 a2 a2))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)) (*.f64 a1 a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) a2 (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) a2 (*.f64 a1 a1))
(fma.f64 (neg.f64 a2) (neg.f64 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 a2) (neg.f64 a2) (*.f64 a1 a1))
(fma.f64 (neg.f64 a1) (neg.f64 a1) (*.f64 a2 a2))
(fma.f64 (fabs.f64 a2) (fabs.f64 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (fabs.f64 a2) (fabs.f64 a2) (*.f64 a1 a1))
(fma.f64 (fabs.f64 a1) (fabs.f64 a1) (*.f64 a2 a2))
(fma.f64 a1 a1 (*.f64 a2 a2))
(fma.f64 a2 a2 (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 a2 a2 (*.f64 a1 a1))
(-.f64 (/.f64 (pow.f64 a2 #s(literal 4 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))) (/.f64 (pow.f64 a1 #s(literal 4 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(-.f64 (*.f64 a2 a2) (*.f64 (neg.f64 a1) a1))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 (neg.f64 a2)) (neg.f64 a2)))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 (fabs.f64 a2)) (fabs.f64 a2)))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 a2) a2))
(-.f64 (*.f64 a1 a1) (*.f64 a2 (neg.f64 a2)))
(+.f64 (/.f64 (pow.f64 a2 #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))) (/.f64 (pow.f64 a1 #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(+.f64 (*.f64 a2 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
(*.f64 (neg.f64 (neg.f64 a1)) (neg.f64 (neg.f64 a1)))
(*.f64 (neg.f64 (fabs.f64 a1)) (neg.f64 (fabs.f64 a1)))
(*.f64 (fabs.f64 (fabs.f64 a1)) (fabs.f64 (fabs.f64 a1)))
(*.f64 (pow.f64 a1 #s(literal 1 binary64)) (pow.f64 a1 #s(literal 1 binary64)))
(*.f64 (pow.f64 a1 #s(literal 1 binary64)) a1)
(*.f64 (neg.f64 a1) (neg.f64 a1))
(*.f64 (fabs.f64 a1) (fabs.f64 a1))
(*.f64 a1 a1)
(pow.f64 (neg.f64 a1) #s(literal 2 binary64))
(pow.f64 (fabs.f64 a1) #s(literal 2 binary64))
(pow.f64 a1 #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 a1) a1))
(fabs.f64 (*.f64 a1 a1))
(exp.f64 (*.f64 (log.f64 a1) #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2)
(*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(/.f64 (*.f64 (neg.f64 a2) (*.f64 a2 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (neg.f64 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (*.f64 (neg.f64 a2) (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(+.f64 (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 a2 a2) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (cos.f64 th) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 a1) (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))) a2))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(/.f64 (*.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (cos.f64 th)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (cos.f64 th)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 a2 a2 (*.f64 a1 a1))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (*.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (neg.f64 (cos.f64 th))))
(/.f64 (*.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (*.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (neg.f64 (cos.f64 th))))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(fma.f64 (*.f64 (cos.f64 th) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (neg.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 #s(literal 0 binary64) (fma.f64 a2 a2 (*.f64 a1 a1)) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (cos.f64 th) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) #s(literal 0 binary64) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)))
(fma.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th) (*.f64 #s(literal 0 binary64) (fma.f64 a2 a2 (*.f64 a1 a1))))
(fma.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) #s(literal 0 binary64)))
(fma.f64 (*.f64 a1 a1) (cos.f64 th) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 a1 (*.f64 a1 (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 a2 (cos.f64 th)) a2 (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 a2 (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (*.f64 a2 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)) (*.f64 #s(literal 0 binary64) (fma.f64 a2 a2 (*.f64 a1 a1))))
(fma.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) #s(literal 0 binary64)))
(fma.f64 (cos.f64 th) (*.f64 a1 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (cos.f64 th)))
(+.f64 (*.f64 #s(literal 0 binary64) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)))
(+.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) #s(literal 0 binary64)) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(+.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(+.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (*.f64 #s(literal 0 binary64) (fma.f64 a2 a2 (*.f64 a1 a1))))
(+.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) #s(literal 0 binary64)))
(*.f64 (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1)))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 a2 a2 (*.f64 a1 a1))) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 a2 a2 (*.f64 a1 a1))) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (cos.f64 th) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 a1) (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))) a2))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 #s(literal 1 binary64) (cos.f64 th))
(*.f64 (cos.f64 th) #s(literal 1 binary64))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) #s(literal 1 binary64)) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (-.f64 (pow.f64 (cos.f64 th) #s(literal 2 binary64)) #s(literal 0 binary64)) (cos.f64 th))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (cos.f64 th)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (cos.f64 th) (cos.f64 th) (*.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th))))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64)))) (neg.f64 (neg.f64 (cos.f64 th))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64))) (neg.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(/.f64 (+.f64 (sin.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 th))) (sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 th)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th)) (cos.f64 th)) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))) (cos.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th) (/.f64 (PI.f64) #s(literal 2 binary64)))) (neg.f64 (cos.f64 th))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (neg.f64 (cos.f64 th)))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 0 binary64) (cos.f64 th)))))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 th) #s(literal 0 binary64))
(fma.f64 (sin.f64 th) #s(literal 0 binary64) (cos.f64 th))
(fma.f64 (cos.f64 th) #s(literal 1 binary64) #s(literal 0 binary64))
(sin.f64 (+.f64 (neg.f64 th) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th))) (/.f64 (pow.f64 (cos.f64 th) #s(literal 2 binary64)) (neg.f64 (cos.f64 th))))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -1 binary64) (cos.f64 th)))
(-.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 th)))
(-.f64 (cos.f64 th) (*.f64 (neg.f64 (sin.f64 th)) #s(literal 0 binary64)))
(-.f64 (cos.f64 th) #s(literal 0 binary64))
(cos.f64 (neg.f64 (neg.f64 th)))
(cos.f64 (neg.f64 th))
(cos.f64 th)
(+.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))) (/.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64))))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 th))) #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (cos.f64 th))
(+.f64 (cos.f64 th) #s(literal 0 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (-.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (cos.f64 th))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1 binary64) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (sin.f64 th) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (cos.f64 th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1))
(*.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1)
(*.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a1 a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a1 a1) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(fma.f64 (*.f64 a1 a1) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(+.f64 (*.f64 (*.f64 a1 a1) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 a2 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (-.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (cos.f64 th))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (*.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (*.f64 (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1 binary64) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (sin.f64 th) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (cos.f64 th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2)
(*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(/.f64 (*.f64 (neg.f64 a2) (*.f64 a2 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 th) #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (neg.f64 (cos.f64 th)))
(/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 th) #s(literal 3 binary64)) #s(literal 0 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fma.f64 (cos.f64 th) (cos.f64 th) #s(literal 0 binary64)))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (neg.f64 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (*.f64 (neg.f64 a2) (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(+.f64 (*.f64 (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 a2 a2) (/.f64 #s(literal 0 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))

eval94.0ms (1.2%)

Memory
26.5MiB live, 212.3MiB allocated; 18ms collecting garbage
Compiler

Compiled 23 103 to 2 297 computations (90.1% saved)

prune32.0ms (0.4%)

Memory
-6.7MiB live, 86.8MiB allocated; 5ms collecting garbage
Pruning

26 alts after pruning (23 fresh and 3 done)

PrunedKeptTotal
New75721778
Fresh325
Picked235
Done000
Total76226788
Accuracy
100.0%
Counts
788 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
99.6%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
99.5%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
25.6%
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
56.1%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (sqrt.f64 #s(literal 2 binary64)))
99.3%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
99.5%
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (*.f64 a2 a2)))
56.2%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1)))
99.3%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
64.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
64.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
64.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))))
15.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
10.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
40.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
56.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
63.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
99.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
61.9%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
9.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
42.8%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
Compiler

Compiled 1 618 to 995 computations (38.5% saved)

simplify103.0ms (1.3%)

Memory
19.7MiB live, 159.3MiB allocated; 12ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff3
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff6
(*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff6
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
cost-diff16
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
cost-diff0
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 a2 a2)
cost-diff0
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
(*.f64 th th)
cost-diff0
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
cost-diff0
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
cost-diff0
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
cost-diff3
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052450
082389
1193376
2650342
32741325
08698324
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 th th)
th
#s(literal 1 binary64)
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
a2
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
Outputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a1 a1 (*.f64 a2 a2)))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
(fma.f64 a1 a1 (*.f64 a2 a2))
a2
(*.f64 a1 a1)
a1
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (log.f64 #s(literal 2 binary64)))
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 th th)
th
#s(literal 1 binary64)
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 a2 a2 (*.f64 a1 a1))
(fma.f64 a1 a1 (*.f64 a2 a2))
a2
(*.f64 a1 a1)
a1
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(*.f64 a2 a2)
a2
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(cos.f64 th)
th
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 a1 #s(literal 3 binary64)) #s(literal -2 binary64)) a1 (*.f64 (/.f64 (pow.f64 a2 #s(literal 3 binary64)) #s(literal 2 binary64)) a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 (pow.f64 a2 #s(literal 3 binary64)) #s(literal 2 binary64)) a2)
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (pow.f64 a1 #s(literal 3 binary64)) #s(literal 2 binary64)) a1)
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))

localize120.0ms (1.6%)

Memory
-16.5MiB live, 222.5MiB allocated; 25ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy2.9921875000000004
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
accuracy6.773437500000001
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
accuracy22.65346080546251
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
accuracy41.587325056749854
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
accuracy0.00390625
(cos.f64 th)
accuracy0.14504223031768437
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.205410009768442
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.709316259768442
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.25
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
accuracy2.1891660869606655
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
accuracy24.175713729173747
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.16796875
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
accuracy0.375
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
accuracy22.65346080546251
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
accuracy55.82367437374039
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.00390625
(cos.f64 th)
accuracy0.07650375976844201
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
accuracy0.27181625976844204
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
accuracy1.0
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
Samples
92.0ms256×0valid
Compiler

Compiled 368 to 43 computations (88.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 71.0ms
ival-mult: 23.0ms (32.3% of total)
ival-div: 16.0ms (22.4% of total)
ival-sub: 11.0ms (15.4% of total)
ival-add: 6.0ms (8.4% of total)
ival-cos: 6.0ms (8.4% of total)
ival-exp: 3.0ms (4.2% of total)
ival-log: 3.0ms (4.2% of total)
ival-sqrt: 3.0ms (4.2% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series46.0ms (0.6%)

Memory
-8.0MiB live, 86.8MiB allocated; 10ms collecting garbage
Counts
24 → 66
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/ (pow a1 2) (sqrt 2))
(/ a1 (sqrt 2))
(/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(+ (* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(/ (pow a1 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a1 2) (sqrt 2))))))
(* -1 (/ (pow a1 2) (sqrt 2)))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(+ (* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(pow a2 2)
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a2 2) (sqrt 2))))))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (pow a1 2) (pow a2 2))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(pow th 2)
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(cos th)
(* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2)))
(* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (+ (/ (pow a1 2) (* (pow th 2) (sqrt 2))) (/ (pow a2 2) (* (pow th 2) (sqrt 2))))))
(* -1/2 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/2))
(/ (cos th) (sqrt 2))
Calls

9 calls:

TimeVariablePointExpression
11.0ms
th
@inf
((exp (* (log 2) 1/2)) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (exp (* (log 2) 1/2))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a1 (/ a1 (sqrt 2))) (/ a1 (sqrt 2)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (+ (* -1/2 (* th th)) 1) (* th th) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2)))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (sqrt 2) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))))
7.0ms
a1
@inf
((exp (* (log 2) 1/2)) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (exp (* (log 2) 1/2))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a1 (/ a1 (sqrt 2))) (/ a1 (sqrt 2)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (+ (* -1/2 (* th th)) 1) (* th th) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2)))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (sqrt 2) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))))
5.0ms
a1
@0
((exp (* (log 2) 1/2)) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (exp (* (log 2) 1/2))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a1 (/ a1 (sqrt 2))) (/ a1 (sqrt 2)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (+ (* -1/2 (* th th)) 1) (* th th) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2)))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (sqrt 2) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))))
4.0ms
a2
@0
((exp (* (log 2) 1/2)) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (exp (* (log 2) 1/2))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a1 (/ a1 (sqrt 2))) (/ a1 (sqrt 2)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (+ (* -1/2 (* th th)) 1) (* th th) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2)))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (sqrt 2) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))))
4.0ms
a2
@inf
((exp (* (log 2) 1/2)) (/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (exp (* (log 2) 1/2))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a1 (/ a1 (sqrt 2))) (/ a1 (sqrt 2)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (+ (* -1/2 (* th th)) 1) (* th th) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2)))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (sqrt 2) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))))

simplify162.0ms (2.1%)

Memory
37.8MiB live, 260.4MiB allocated; 39ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01981238
17061068
23337984
08057904
Stop Event
iter limit
node limit
Counts
66 → 66
Calls
Call 1
Inputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/ (pow a1 2) (sqrt 2))
(/ a1 (sqrt 2))
(/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(+ (* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(/ (pow a1 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a1 2) (sqrt 2))))))
(* -1 (/ (pow a1 2) (sqrt 2)))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(+ (* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(pow a2 2)
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a2 2) (sqrt 2))))))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (pow a1 2) (pow a2 2))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(pow th 2)
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(cos th)
(* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2)))
(* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (+ (/ (pow a1 2) (* (pow th 2) (sqrt 2))) (/ (pow a2 2) (* (pow th 2) (sqrt 2))))))
(* -1/2 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/2))
(/ (cos th) (sqrt 2))
Outputs
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (pow a2 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a2) a2)
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(/ (pow a2 2) (sqrt 2))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(/ (pow a1 2) (sqrt 2))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(/ a1 (sqrt 2))
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(/ (pow a1 4) (pow (sqrt 2) 2))
(/.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal 2 binary64))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 a2 #s(literal 4 binary64))) #s(literal 2 binary64))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1))
(* (pow a1 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a1) a1)
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(*.f64 (fma.f64 (/.f64 (cos.f64 th) a1) (/.f64 (*.f64 a2 a2) a1) (cos.f64 th)) (*.f64 a1 a1))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2))
(*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(* (pow a1 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a2 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a1 2) (sqrt 2))))))
(*.f64 (/.f64 (fma.f64 (*.f64 (/.f64 a2 a1) (/.f64 a2 a1)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(* -1 (/ (pow a1 2) (sqrt 2)))
(*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(*.f64 (-.f64 (*.f64 (/.f64 a2 (*.f64 a1 a1)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(/.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal -2 binary64))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(*.f64 (-.f64 (/.f64 (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)) (pow.f64 a1 #s(literal 4 binary64))) #s(literal 1/2 binary64)) (pow.f64 a1 #s(literal 4 binary64)))
(+ (* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (sqrt 2)))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(pow a2 2)
(*.f64 a2 a2)
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(-.f64 (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)) (/.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal 2 binary64)))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 a2))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(*.f64 (fma.f64 (/.f64 (*.f64 a1 a1) a2) (/.f64 (cos.f64 th) a2) (cos.f64 th)) (*.f64 a2 a2))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(*.f64 (/.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(* (pow a2 2) (+ (* -1/2 (/ (pow th 2) (sqrt 2))) (+ (/ 1 (sqrt 2)) (/ (* (pow a1 2) (+ 1 (* -1/2 (pow th 2)))) (* (pow a2 2) (sqrt 2))))))
(*.f64 (/.f64 (fma.f64 (*.f64 (/.f64 a1 a2) (/.f64 a1 a2)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(*.f64 (/.f64 (fma.f64 (neg.f64 a1) (/.f64 a1 (*.f64 a2 a2)) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 a2 #s(literal 4 binary64))) #s(literal 1/2 binary64)) (pow.f64 a2 #s(literal 4 binary64)))
(/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* 1/24 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2))) (* 1/24 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+.f64 (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (pow a1 2) (pow a2 2))
(fma.f64 a1 a1 (*.f64 a2 a2))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+.f64 (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(pow th 2)
(*.f64 th th)
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) a2) a2 (*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 a2 a2)) (*.f64 th th)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(fma.f64 (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) a2) a2 (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/720 binary64) (*.f64 a2 a2)) (*.f64 #s(literal 1/24 binary64) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))))
(/ 1 (sqrt 2))
(/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (sqrt 2))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(cos th)
(cos.f64 th)
(* -1/2 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (sqrt 2)))
(*.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th))
(* (pow th 2) (+ (* -1/2 (/ (+ (pow a1 2) (pow a2 2)) (sqrt 2))) (+ (/ (pow a1 2) (* (pow th 2) (sqrt 2))) (/ (pow a2 2) (* (pow th 2) (sqrt 2))))))
(*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))
(* -1/2 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/2 binary64))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/2))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/2 binary64)) th) th)
(/ (cos th) (sqrt 2))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))

rewrite106.0ms (1.4%)

Memory
-6.6MiB live, 139.0MiB allocated; 22ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
052379
082290
1289258
02402258
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
24 → 568
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
Outputs
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64)))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(/.f64 (-.f64 (*.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))))))
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a1 a1 (*.f64 a2 a2)))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)))) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a1) (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (neg.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))) a2))
(-.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (neg.f64 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))))
(-.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(+.f64 (*.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(*.f64 (cos.f64 th) (fma.f64 a1 a1 (*.f64 a2 a2)))
(/.f64 (*.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (cos.f64 th)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (cos.f64 th)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(fma.f64 (*.f64 (cos.f64 th) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (neg.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 a2 (cos.f64 th)) a2 (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 a2 a2) (cos.f64 th) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 a1 a1) (cos.f64 th) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 a1 (*.f64 a1 (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 a2 (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (*.f64 a2 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (*.f64 a1 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (cos.f64 th)))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a1 a1)))
(+.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(+.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 th) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))
(cos.f64 (neg.f64 (neg.f64 th)))
(cos.f64 (neg.f64 th))
(cos.f64 th)
(+.f64 (*.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(*.f64 (neg.f64 a1) (/.f64 (neg.f64 a1) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (fabs.f64 a1) (/.f64 (fabs.f64 a1) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 a1) a1) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 a1)) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 a1) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 a1) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 a1 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(/.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(fma.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1 binary64)))
(fma.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1 binary64) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(fma.f64 #s(literal 1 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal 1 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(+.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1 binary64)))
(+.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1 binary64)) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/8 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (fabs.f64 th)) (fabs.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 th)) (neg.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) th) (*.f64 th #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) th) th #s(literal 1 binary64))
(fma.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 th (*.f64 #s(literal -1/2 binary64) th) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) th)) th))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 th th)) #s(literal -1/2 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 th th)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))))
(+.f64 (*.f64 (*.f64 th th) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (fabs.f64 th)) (neg.f64 (fabs.f64 th)))
(*.f64 (fabs.f64 (fabs.f64 th)) (fabs.f64 (fabs.f64 th)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) (pow.f64 th #s(literal 1 binary64)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) th)
(*.f64 (neg.f64 (neg.f64 th)) (neg.f64 (neg.f64 th)))
(*.f64 (fabs.f64 th) (fabs.f64 th))
(*.f64 (neg.f64 th) (neg.f64 th))
(*.f64 th th)
(pow.f64 (fabs.f64 th) #s(literal 2 binary64))
(pow.f64 (neg.f64 th) #s(literal 2 binary64))
(pow.f64 th #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 th) th))
(neg.f64 (*.f64 th (neg.f64 th)))
(fabs.f64 (*.f64 th th))
(exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2)
(*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (*.f64 (neg.f64 a2) (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)))
(*.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)))
(*.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)))
(*.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)))
(*.f64 (pow.f64 a2 #s(literal 1 binary64)) a2)
(*.f64 (neg.f64 a2) (neg.f64 a2))
(*.f64 (fabs.f64 a2) (fabs.f64 a2))
(*.f64 a2 a2)
(pow.f64 (neg.f64 a2) #s(literal 2 binary64))
(pow.f64 (fabs.f64 a2) #s(literal 2 binary64))
(pow.f64 a2 #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 a2) a2))
(neg.f64 (*.f64 a2 (neg.f64 a2)))
(fabs.f64 (*.f64 a2 a2))
(exp.f64 (*.f64 (log.f64 a2) #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 (cos.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (*.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (*.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(neg.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (/.f64 a2 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (/.f64 (*.f64 a2 a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (neg.f64 a1) (/.f64 (neg.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (fabs.f64 a1) (/.f64 (fabs.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (/.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(+.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2)
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)))
(*.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))))
(*.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))))
(*.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2)
(*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2))
(*.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2))
(*.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)))
(*.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(pow.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 a2 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (neg.f64 a2) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (pow.f64 a2 #s(literal 4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (*.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(neg.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
(fabs.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 a1 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (fabs.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (fabs.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(*.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(*.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 1 binary64)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(*.f64 (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1) a1)
(*.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a1 a1))
(*.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(*.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(*.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1))
(*.f64 (*.f64 a1 a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)))
(*.f64 a1 (*.f64 a1 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(*.f64 a1 (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1))
(pow.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 a1 a1) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1) (neg.f64 a1)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1) a1) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (pow.f64 a1 #s(literal 4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (neg.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (neg.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) a1 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a1 (neg.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (neg.f64 a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(+.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (*.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (*.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(neg.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (/.f64 a2 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (/.f64 (*.f64 a2 a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (neg.f64 a1) (/.f64 (neg.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (fabs.f64 a1) (/.f64 (fabs.f64 a1) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (/.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(fma.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(+.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64)))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(/.f64 (-.f64 (*.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))))))
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64))))
(+.f64 (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))) (sinh.f64 (log.f64 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (fma.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (-.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (fma.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (-.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(*.f64 (fma.f64 (neg.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) a2 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (-.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(*.f64 (fma.f64 (fabs.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (fabs.f64 a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (-.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (fma.f64 (fabs.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (fabs.f64 a2) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (-.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(*.f64 (fma.f64 (fabs.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (fabs.f64 a2) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)) (-.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(*.f64 (fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(*.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(/.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64)) (*.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64)))) (neg.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 a2)) (neg.f64 a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (fabs.f64 a2)) (fabs.f64 a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a2) a2 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) a1 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (fabs.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 1 binary64)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) a2 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 a2 a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (fabs.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 (*.f64 a2 a2) (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(fma.f64 a2 (*.f64 a2 (pow.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64)) (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64)) (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)))
(-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(+.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (neg.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))) (fabs.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 a1) a1) (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (*.f64 (neg.f64 a1) (*.f64 (pow.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)) a1)))
(+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))))

eval73.0ms (0.9%)

Memory
18.1MiB live, 153.2MiB allocated; 18ms collecting garbage
Compiler

Compiled 30 845 to 2 240 computations (92.7% saved)

prune49.0ms (0.6%)

Memory
-20.2MiB live, 83.6MiB allocated; 34ms collecting garbage
Pruning

33 alts after pruning (28 fresh and 5 done)

PrunedKeptTotal
New61414628
Fresh41418
Picked325
Done033
Total62133654
Accuracy
100.0%
Counts
654 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
99.6%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
99.5%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
25.6%
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
56.1%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (sqrt.f64 #s(literal 2 binary64)))
99.3%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
64.4%
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (fma.f64 a1 a1 (*.f64 a2 a2))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
99.3%
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (*.f64 (*.f64 (cos.f64 th) a2) a2)) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
99.5%
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (*.f64 a2 a2)))
99.4%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
99.3%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
63.0%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
64.3%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
99.4%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
64.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
64.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
15.8%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
15.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (/.f64 (*.f64 a2 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
10.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
15.8%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
40.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
56.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
99.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
61.9%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
9.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
40.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
9.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
12.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
16.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
42.8%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
Compiler

Compiled 2 202 to 1 319 computations (40.1% saved)

simplify96.0ms (1.2%)

Memory
18.4MiB live, 105.0MiB allocated; 25ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
cost-diff0
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
cost-diff3
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
cost-diff0
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
cost-diff0
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 a2 a2)
cost-diff0
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
cost-diff0
(fma.f64 a2 a2 (*.f64 a1 a1))
cost-diff0
(cos.f64 th)
cost-diff0
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
cost-diff0
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059449
089423
1196409
2632397
32362376
47987376
08017373
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
a2
(*.f64 a1 a1)
a1
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
(asinh.f64 #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
a2
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
a2
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(cos.f64 th)
th
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
(/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))
(pow.f64 a2 #s(literal 4 binary64))
a2
#s(literal 4 binary64)
#s(literal 2 binary64)
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))
Outputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(*.f64 (/.f64 (cos.f64 th) (cosh.f64 (asinh.f64 #s(literal 1 binary64)))) (fma.f64 a1 a1 (*.f64 a2 a2)))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(cos.f64 th)
th
(fma.f64 a2 a2 (*.f64 a1 a1))
(fma.f64 a1 a1 (*.f64 a2 a2))
a2
(*.f64 a1 a1)
a1
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
(asinh.f64 #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
a2
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))))
(*.f64 a2 a2)
a2
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))
(fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(cos.f64 th)
th
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
a2
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
(*.f64 (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
(/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))
(pow.f64 a2 #s(literal 4 binary64))
a2
#s(literal 4 binary64)
#s(literal 2 binary64)
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1)
a1
(/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))

localize136.0ms (1.8%)

Memory
-20.3MiB live, 219.3MiB allocated; 41ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.5
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
accuracy2.9921875000000004
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
accuracy22.65346080546251
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
accuracy41.587325056749854
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
accuracy0.08984375
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
accuracy0.14504223031768437
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
accuracy0.19140625
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
accuracy0.5
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
accuracy0.14504223031768437
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.205410009768442
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.709316259768442
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
accuracy32.588790014440875
#s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
accuracy0.1437604353402355
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
accuracy0.19140625
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
accuracy0.5
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
accuracy22.65346080546251
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
accuracy0.00390625
(cos.f64 th)
accuracy0.07650375976844201
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
accuracy0.27181625976844204
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
accuracy1.0
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
Samples
102.0ms256×0valid
Compiler

Compiled 324 to 45 computations (86.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 75.0ms
ival-mult: 34.0ms (45.1% of total)
ival-div: 11.0ms (14.6% of total)
ival-cos: 9.0ms (11.9% of total)
ival-cosh: 6.0ms (8% of total)
ival-add: 4.0ms (5.3% of total)
ival-asinh: 3.0ms (4% of total)
ival-pow: 3.0ms (4% of total)
ival-sub: 2.0ms (2.7% of total)
ival-sqrt: 2.0ms (2.7% of total)
exact: 1.0ms (1.3% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series208.0ms (2.7%)

Memory
-3.2MiB live, 186.7MiB allocated; 57ms collecting garbage
Counts
21 → 62
Calls
Call 1
Inputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
(fma.f64 a2 a2 (*.f64 a1 a1))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
#s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
Outputs
(* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(+ (* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(pow a2 2)
(+ (pow a1 2) (pow a2 2))
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(* (pow a1 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(pow a1 2)
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(/ (pow a1 2) (sqrt 2))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(* -1 (/ (pow a1 2) (sqrt 2)))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(/ a2 (sqrt 2))
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a2 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(+ (* -1 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1/360 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(* 2 (/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(cos th)
(/ (cos th) (sqrt 2))
Calls

9 calls:

TimeVariablePointExpression
88.0ms
a1
@-inf
((/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (cosh (asinh 1))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* a2 a2) (* a1 a1)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a2 (/ a2 (sqrt 2))) (/ a2 (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (cos th) (* (/ a2 (sqrt 2)) a2)) (* (/ a2 (sqrt 2)) a2) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (cosh (asinh 1)) (cos th))
36.0ms
th
@0
((/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (cosh (asinh 1))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* a2 a2) (* a1 a1)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a2 (/ a2 (sqrt 2))) (/ a2 (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (cos th) (* (/ a2 (sqrt 2)) a2)) (* (/ a2 (sqrt 2)) a2) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (cosh (asinh 1)) (cos th))
34.0ms
th
@inf
((/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (cosh (asinh 1))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* a2 a2) (* a1 a1)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a2 (/ a2 (sqrt 2))) (/ a2 (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (cos th) (* (/ a2 (sqrt 2)) a2)) (* (/ a2 (sqrt 2)) a2) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (cosh (asinh 1)) (cos th))
15.0ms
th
@-inf
((/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (cosh (asinh 1))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* a2 a2) (* a1 a1)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a2 (/ a2 (sqrt 2))) (/ a2 (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (cos th) (* (/ a2 (sqrt 2)) a2)) (* (/ a2 (sqrt 2)) a2) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (cosh (asinh 1)) (cos th))
10.0ms
a1
@0
((/ (* (cos th) (+ (* a2 a2) (* a1 a1))) (cosh (asinh 1))) (* (cos th) (+ (* a2 a2) (* a1 a1))) (cos th) (+ (* a2 a2) (* a1 a1)) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (* a2 (/ a2 (sqrt 2))) (/ a2 (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (* a2 a2) (/ (cos th) (sqrt 2))) (* a2 a2) (/ (cos th) (sqrt 2)) (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (* (cos th) (* (/ a2 (sqrt 2)) a2)) (* (/ a2 (sqrt 2)) a2) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2)))) (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/ (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (- (* (/ a2 (sqrt 2)) a2) (* a1 (/ a1 (sqrt 2))))) (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (cosh (asinh 1)) (cos th))

simplify182.0ms (2.4%)

Memory
29.9MiB live, 318.9MiB allocated; 33ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02041311
17371112
235101082
090771009
Stop Event
iter limit
node limit
Counts
62 → 62
Calls
Call 1
Inputs
(* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(+ (* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(* (pow a2 2) (cos th))
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(pow a2 2)
(+ (pow a1 2) (pow a2 2))
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(/ (pow a2 2) (sqrt 2))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(* (pow a1 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(* (pow a1 2) (cos th))
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(pow a1 2)
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(/ (pow a1 2) (sqrt 2))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(* -1 (/ (pow a1 2) (sqrt 2)))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(/ a2 (sqrt 2))
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(* (pow a2 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(+ (* -1 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1/360 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
1
(+ 1 (* -1/2 (pow th 2)))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(/ 1 (sqrt 2))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(* 2 (/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(cos th)
(/ (cos th) (sqrt 2))
Outputs
(* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(*.f64 (*.f64 (*.f64 a2 a2) #s(literal 2 binary64)) (/.f64 (cos.f64 th) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 th)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(* (pow a2 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a2) a2)
(+ (* (pow a1 2) (cos th)) (* (pow a2 2) (cos th)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(pow a2 2)
(*.f64 a2 a2)
(+ (pow a1 2) (pow a2 2))
(fma.f64 a1 a1 (*.f64 a2 a2))
(/ (* (pow a2 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (* (pow a1 2) (cos th)) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (sqrt 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/ (pow a2 2) (sqrt 2))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1 (/ (pow a1 2) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(/ (pow a2 4) (pow (sqrt 2) 2))
(/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))
(+ (* -1 (/ (pow a1 4) (pow (sqrt 2) 2))) (/ (pow a2 4) (pow (sqrt 2) 2)))
(/.f64 (fma.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal -1 binary64) (pow.f64 a2 #s(literal 4 binary64))) #s(literal 2 binary64))
(* 2 (/ (* (pow a1 2) (cos th)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(*.f64 (*.f64 (*.f64 a1 a1) #s(literal 2 binary64)) (/.f64 (cos.f64 th) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(* (pow a1 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(*.f64 (*.f64 (*.f64 a1 a1) #s(literal 2 binary64)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))
(* (pow a1 2) (cos th))
(*.f64 (*.f64 (cos.f64 th) a1) a1)
(* (pow a1 2) (+ (cos th) (/ (* (pow a2 2) (cos th)) (pow a1 2))))
(*.f64 (fma.f64 (/.f64 (*.f64 a2 a2) a1) (/.f64 (cos.f64 th) a1) (cos.f64 th)) (*.f64 a1 a1))
(pow a1 2)
(*.f64 a1 a1)
(* (pow a1 2) (+ 1 (/ (pow a2 2) (pow a1 2))))
(*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))
(/ (* (pow a1 2) (cos th)) (sqrt 2))
(*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a2 2) (cos th)) (* (pow a1 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1))
(/ (pow a1 2) (sqrt 2))
(*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (+ (/ 1 (sqrt 2)) (/ (pow a2 2) (* (pow a1 2) (sqrt 2)))))
(*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))
(* -1 (/ (pow a1 2) (sqrt 2)))
(*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))
(* (pow a1 2) (- (/ (pow a2 2) (* (pow a1 2) (sqrt 2))) (/ 1 (sqrt 2))))
(*.f64 (-.f64 (*.f64 (/.f64 a2 (*.f64 a1 a1)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1))
(* -1 (/ (pow a1 4) (pow (sqrt 2) 2)))
(/.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal -2 binary64))
(* (pow a1 4) (- (/ (pow a2 4) (* (pow a1 4) (pow (sqrt 2) 2))) (/ 1 (pow (sqrt 2) 2))))
(*.f64 (-.f64 (/.f64 (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)) (pow.f64 a1 #s(literal 4 binary64))) #s(literal 1/2 binary64)) (pow.f64 a1 #s(literal 4 binary64)))
(/ a2 (sqrt 2))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(- (/ (pow a2 2) (sqrt 2)) (/ (pow a1 2) (sqrt 2)))
(/.f64 (fma.f64 (neg.f64 a1) a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(- (/ (pow a2 4) (pow (sqrt 2) 2)) (/ (pow a1 4) (pow (sqrt 2) 2)))
(/.f64 (fma.f64 (pow.f64 a1 #s(literal 4 binary64)) #s(literal -1 binary64) (pow.f64 a2 #s(literal 4 binary64))) #s(literal 2 binary64))
(* (pow a2 2) (+ (* 2 (/ (cos th) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(*.f64 (*.f64 (*.f64 a2 a2) #s(literal 2 binary64)) (*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))
(* (pow a2 2) (+ (cos th) (/ (* (pow a1 2) (cos th)) (pow a2 2))))
(*.f64 (fma.f64 (/.f64 (*.f64 a1 a1) a2) (/.f64 (cos.f64 th) a2) (cos.f64 th)) (*.f64 a2 a2))
(* (pow a2 2) (+ 1 (/ (pow a1 2) (pow a2 2))))
(*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (*.f64 a2 a2))
(* (pow a2 2) (+ (/ (cos th) (sqrt 2)) (/ (* (pow a1 2) (cos th)) (* (pow a2 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a2 a2))
(* (pow a2 2) (+ (/ 1 (sqrt 2)) (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))))
(*.f64 (/.f64 (fma.f64 (/.f64 a1 a2) (/.f64 a1 a2) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(* (pow a2 2) (+ (* -1 (/ (pow a1 2) (* (pow a2 2) (sqrt 2)))) (/ 1 (sqrt 2))))
(*.f64 (/.f64 (fma.f64 (neg.f64 a1) (/.f64 a1 (*.f64 a2 a2)) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(* (pow a2 4) (+ (* -1 (/ (pow a1 4) (* (pow a2 4) (pow (sqrt 2) 2)))) (/ 1 (pow (sqrt 2) 2))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 a2 #s(literal 4 binary64))) #s(literal 1/2 binary64)) (pow.f64 a2 #s(literal 4 binary64)))
(* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal 2 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -1 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))
(/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) th) (neg.f64 th) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal 2 binary64))) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))
(/.f64 (+.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) th) (neg.f64 th) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 th th)) (fma.f64 a1 a1 (*.f64 a2 a2))) (*.f64 th th))) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 2 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* (pow th 2) (+ (* -1/360 (/ (* (pow th 2) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))) (* 1/12 (/ (+ (pow a1 2) (pow a2 2)) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2))))))))))))
(+.f64 (/.f64 (fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) th) (neg.f64 th) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal 2 binary64))) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (fma.f64 #s(literal 1/12 binary64) (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (*.f64 #s(literal -1/360 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (*.f64 th th))) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))
(+ (* -1/2 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* 1/24 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64))) (*.f64 th th) (fma.f64 a1 a1 (*.f64 a2 a2)))
(+ (* (pow th 2) (+ (* -1/2 (+ (pow a1 2) (pow a2 2))) (* (pow th 2) (+ (* -1/720 (* (pow th 2) (+ (pow a1 2) (pow a2 2)))) (* 1/24 (+ (pow a1 2) (pow a2 2))))))) (+ (pow a1 2) (pow a2 2)))
(fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow th 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* 1/24 (pow th 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/24 (* -1/720 (pow th 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (*.f64 th th) #s(literal -1/2 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (* -1/2 (/ (pow a2 2) (sqrt 2))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2)))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/24 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a1 2) (sqrt 2))) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* 1/24 (/ (pow a1 2) (sqrt 2))) (+ (* 1/24 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (pow a1 2) (sqrt 2))) (* -1/720 (/ (pow a2 2) (sqrt 2))))))))))) (+ (/ (pow a1 2) (sqrt 2)) (/ (pow a2 2) (sqrt 2))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/720 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 (*.f64 #s(literal 1/24 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -1/2 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (/ (pow a2 2) (sqrt 2)))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a2 a2)) (*.f64 th th) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* 1/24 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))))) (/ (pow a2 2) (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 (*.f64 th th) (*.f64 #s(literal 1/24 binary64) (*.f64 a2 a2)) (*.f64 #s(literal -1/2 binary64) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow th 2) (+ (* -1/2 (/ (pow a2 2) (sqrt 2))) (* (pow th 2) (+ (* -1/720 (/ (* (pow a2 2) (pow th 2)) (sqrt 2))) (* 1/24 (/ (pow a2 2) (sqrt 2))))))) (/ (pow a2 2) (sqrt 2)))
(+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 a2 a2)) (*.f64 th th) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 th #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/720 binary64) (*.f64 a2 a2)) (*.f64 #s(literal 1/24 binary64) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))))
(/ 1 (sqrt 2))
(/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (/ (pow th 2) (sqrt 2))) (/ 1 (sqrt 2)))
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (pow th 2) (- (* 1/24 (/ (pow th 2) (sqrt 2))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (/.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 th th) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/720 (/ (pow th 2) (sqrt 2))) (* 1/24 (/ 1 (sqrt 2))))) (* 1/2 (/ 1 (sqrt 2))))) (/ 1 (sqrt 2)))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 th th) #s(literal 1/24 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))
(* 2 (/ (* (cos th) (+ (pow a1 2) (pow a2 2))) (+ 1 (+ (sqrt 2) (/ 1 (+ 1 (sqrt 2)))))))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 th)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (+.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(* (cos th) (+ (pow a1 2) (pow a2 2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(cos th)
(cos.f64 th)
(/ (cos th) (sqrt 2))
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))

rewrite90.0ms (1.2%)

Memory
-32.2MiB live, 113.9MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
059375
089329
1309306
02369306
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
21 → 289
Calls
Call 1
Inputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1)))
(cos.f64 th)
(fma.f64 a2 a2 (*.f64 a1 a1))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 a2)
(/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
#s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)))
Outputs
(*.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th)) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 a1 a1 (*.f64 a2 a2)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (cos.f64 th)) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) a1 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 a1 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(fma.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))) a1))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (neg.f64 a1) (/.f64 (*.f64 a1 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (neg.f64 a1) a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))) a2))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))) (cos.f64 th)))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th))))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
(-.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (neg.f64 (cos.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (/.f64 (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (pow.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (cos.f64 th)))
(+.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cos.f64 th))
(*.f64 (cos.f64 th) (fma.f64 a1 a1 (*.f64 a2 a2)))
(/.f64 (*.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (cos.f64 th)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (cos.f64 th)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1))) (-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 a2 (cos.f64 th)) a2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 (cos.f64 th) a1) a1)) (*.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1)))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (*.f64 (cos.f64 th) (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(fma.f64 (*.f64 (cos.f64 th) (neg.f64 a1)) (neg.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a1)) (fabs.f64 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) a1) a1 (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (*.f64 (cos.f64 th) (fabs.f64 a2)) (fabs.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) (neg.f64 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (neg.f64 a1) (*.f64 (neg.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (fabs.f64 a1) (*.f64 (fabs.f64 a1) (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 a2 a2) (cos.f64 th) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 a2 (cos.f64 th)) a2 (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (*.f64 a1 a1) (cos.f64 th) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 a1 (*.f64 a1 (cos.f64 th)) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(fma.f64 a2 (*.f64 a2 (cos.f64 th)) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (*.f64 a2 a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (cos.f64 th) (*.f64 a1 a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (neg.f64 a1) a1) (cos.f64 th)))
(-.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a1 a1)))
(+.f64 (*.f64 (*.f64 (cos.f64 th) a1) a1) (*.f64 (*.f64 a2 (cos.f64 th)) a2))
(+.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 (*.f64 (cos.f64 th) a1) a1))
(fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 th) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) th))
(cos.f64 (neg.f64 (neg.f64 th)))
(cos.f64 (neg.f64 th))
(cos.f64 th)
(+.f64 (*.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 a2 #s(literal 4 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 6 binary64)) (pow.f64 (*.f64 (neg.f64 a1) a1) #s(literal 3 binary64))) (+.f64 (pow.f64 a2 #s(literal 4 binary64)) (+.f64 (pow.f64 a1 #s(literal 4 binary64)) (*.f64 (*.f64 a2 a2) (*.f64 (neg.f64 a1) a1)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (neg.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64))) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (+.f64 (pow.f64 a1 #s(literal 4 binary64)) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))))
(fma.f64 (neg.f64 (neg.f64 a1)) (neg.f64 (neg.f64 a1)) (*.f64 a2 a2))
(fma.f64 (neg.f64 (fabs.f64 a1)) (neg.f64 (fabs.f64 a1)) (*.f64 a2 a2))
(fma.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)) (*.f64 a1 a1))
(fma.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)) (*.f64 a1 a1))
(fma.f64 (fabs.f64 (fabs.f64 a1)) (fabs.f64 (fabs.f64 a1)) (*.f64 a2 a2))
(fma.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)) (*.f64 a1 a1))
(fma.f64 (pow.f64 a1 #s(literal 1 binary64)) (pow.f64 a1 #s(literal 1 binary64)) (*.f64 a2 a2))
(fma.f64 (pow.f64 a1 #s(literal 1 binary64)) a1 (*.f64 a2 a2))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)) (*.f64 a1 a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) a2 (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (pow.f64 a2 #s(literal 1 binary64)) a2 (*.f64 a1 a1))
(fma.f64 (neg.f64 a1) (neg.f64 a1) (*.f64 a2 a2))
(fma.f64 (neg.f64 a2) (neg.f64 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (neg.f64 a2) (neg.f64 a2) (*.f64 a1 a1))
(fma.f64 (fabs.f64 a1) (fabs.f64 a1) (*.f64 a2 a2))
(fma.f64 (fabs.f64 a2) (fabs.f64 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 (fabs.f64 a2) (fabs.f64 a2) (*.f64 a1 a1))
(fma.f64 a1 a1 (*.f64 a2 a2))
(fma.f64 a2 a2 (*.f64 (neg.f64 (neg.f64 a1)) a1))
(fma.f64 a2 a2 (*.f64 a1 a1))
(-.f64 (/.f64 (pow.f64 a2 #s(literal 4 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))) (/.f64 (pow.f64 a1 #s(literal 4 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(-.f64 (*.f64 a2 a2) (*.f64 (neg.f64 a1) a1))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 (neg.f64 a2)) (neg.f64 a2)))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 (fabs.f64 a2)) (fabs.f64 a2)))
(-.f64 (*.f64 a1 a1) (*.f64 (neg.f64 a2) a2))
(-.f64 (*.f64 a1 a1) (*.f64 a2 (neg.f64 a2)))
(+.f64 (/.f64 (pow.f64 a2 #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))) (/.f64 (pow.f64 a1 #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64)))))
(+.f64 (*.f64 a2 a2) (*.f64 (neg.f64 (neg.f64 a1)) a1))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(*.f64 (/.f64 (*.f64 a2 a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(*.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 a2) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (neg.f64 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 a2 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 a2 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(*.f64 (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) a2) a2)
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 a2 (*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64))) a2))
(/.f64 (*.f64 (neg.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 a2)) (neg.f64 (neg.f64 a2)))
(*.f64 (neg.f64 (fabs.f64 a2)) (neg.f64 (fabs.f64 a2)))
(*.f64 (fabs.f64 (fabs.f64 a2)) (fabs.f64 (fabs.f64 a2)))
(*.f64 (pow.f64 a2 #s(literal 1 binary64)) (pow.f64 a2 #s(literal 1 binary64)))
(*.f64 (pow.f64 a2 #s(literal 1 binary64)) a2)
(*.f64 (neg.f64 a2) (neg.f64 a2))
(*.f64 (fabs.f64 a2) (fabs.f64 a2))
(*.f64 a2 a2)
(pow.f64 (neg.f64 a2) #s(literal 2 binary64))
(pow.f64 (fabs.f64 a2) #s(literal 2 binary64))
(pow.f64 a2 #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 a2) a2))
(neg.f64 (*.f64 a2 (neg.f64 a2)))
(fabs.f64 (*.f64 a2 a2))
(exp.f64 (*.f64 (log.f64 a2) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
(*.f64 (/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a2)) (neg.f64 a2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (fabs.f64 a2)) (fabs.f64 a2))
(*.f64 (neg.f64 a2) (*.f64 (neg.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (fabs.f64 a2) (*.f64 (fabs.f64 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th))
(*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2)
(*.f64 (*.f64 a2 (cos.f64 th)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 (cos.f64 th)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))
(*.f64 a2 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)))
(*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(/.f64 (*.f64 (neg.f64 (cos.f64 th)) (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 a2) (cos.f64 th)) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 a2) (neg.f64 (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (*.f64 (neg.f64 a2) (cos.f64 th))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 a2 (cos.f64 th)) a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 a2 a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))
(*.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)
(*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (neg.f64 a2) a2) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 (neg.f64 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 a2 a2)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (neg.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (neg.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 4 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 4 binary64))) (pow.f64 (/.f64 (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(fma.f64 (/.f64 (*.f64 a2 a2) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) a1 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (neg.f64 a2) (/.f64 (neg.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (fabs.f64 a2) (/.f64 (fabs.f64 a2) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 a1) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(fma.f64 a1 (neg.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(fma.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 (neg.f64 a1)) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2))
(+.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (neg.f64 a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))) a1) #s(literal 2 binary64)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
(/.f64 (neg.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (neg.f64 (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64))) #s(literal 4 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -2 binary64))
(/.f64 (+.f64 (exp.f64 (neg.f64 (asinh.f64 #s(literal 1 binary64)))) (exp.f64 (neg.f64 (neg.f64 (asinh.f64 #s(literal 1 binary64)))))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(cosh.f64 (neg.f64 (neg.f64 (asinh.f64 #s(literal 1 binary64)))))
(cosh.f64 (neg.f64 (asinh.f64 #s(literal 1 binary64))))
(cosh.f64 (asinh.f64 #s(literal 1 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(+.f64 (/.f64 (exp.f64 (asinh.f64 #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 (asinh.f64 #s(literal 1 binary64)))) #s(literal 2 binary64)))
#s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)))

eval41.0ms (0.5%)

Memory
37.7MiB live, 82.1MiB allocated; 6ms collecting garbage
Compiler

Compiled 12 861 to 1 202 computations (90.7% saved)

prune51.0ms (0.7%)

Memory
-26.6MiB live, 66.9MiB allocated; 27ms collecting garbage
Pruning

28 alts after pruning (20 fresh and 8 done)

PrunedKeptTotal
New3584362
Fresh71623
Picked235
Done055
Total36728395
Accuracy
100.0%
Counts
395 → 28
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (/.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64))))
99.6%
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
25.6%
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
56.1%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
99.3%
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
99.3%
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (*.f64 (*.f64 (cos.f64 th) a2) a2)) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
99.5%
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (*.f64 a2 a2)))
63.0%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
99.4%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
99.3%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
63.0%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
64.3%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
99.4%
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
64.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
64.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
15.8%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
10.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
40.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
99.4%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
99.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
61.9%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
9.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
40.1%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
64.3%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
9.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
12.7%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
16.2%
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
Compiler

Compiled 2 638 to 824 computations (68.8% saved)

regimes158.0ms (2%)

Memory
-10.3MiB live, 177.8MiB allocated; 59ms collecting garbage
Counts
50 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (/.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1)))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (/.f64 (*.f64 a2 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))))
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (fma.f64 a1 a1 (*.f64 a2 a2))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (*.f64 (*.f64 (cos.f64 th) a2) a2)) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (*.f64 (*.f64 (cos.f64 th) a2) a2)) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (-.f64 (pow.f64 a2 #s(literal 4 binary64)) (pow.f64 a1 #s(literal 4 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (+.f64 a2 a1) (-.f64 a2 a1))))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (cosh.f64 (asinh.f64 #s(literal 1 binary64))))
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (+.f64 (pow.f64 a1 #s(literal 6 binary64)) (pow.f64 a2 #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 a1 #s(literal 4 binary64)) (pow.f64 (*.f64 a2 a1) #s(literal 2 binary64))) (pow.f64 a2 #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (fma.f64 (sin.f64 th) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 th) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (*.f64 a2 a2)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (-.f64 (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))))
Outputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
Calls

8 calls:

47.0ms
(cos.f64 th)
24.0ms
a2
18.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
12.0ms
th
12.0ms
a1
Results
AccuracySegmentsBranch
99.6%1(*.f64 a2 a2)
99.6%1(*.f64 a1 a1)
99.6%1(cos.f64 th)
99.6%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
99.6%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.6%1a1
99.6%1a2
99.6%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes87.0ms (1.1%)

Memory
39.7MiB live, 176.9MiB allocated; 13ms collecting garbage
Counts
35 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (/.f64 #s(literal 2 binary64) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 th) a1) (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 a1)))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1)))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (- (* (* (/ a2 (sqrt 2)) a2) (* (/ a2 (sqrt 2)) a2)) (* (* a1 (/ a1 (sqrt 2))) (* a1 (/ a1 (sqrt 2))))) (/.f64 (pow.f64 a2 #s(literal 4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (-.f64 (/.f64 (*.f64 a2 (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) a2)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))))
(/.f64 #s(approx (* (cos th) (+ (* a2 a2) (* a1 a1))) (fma.f64 a1 a1 (*.f64 a2 a2))) (exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
Outputs
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
Calls

8 calls:

19.0ms
(cos.f64 th)
13.0ms
a1
11.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
9.0ms
th
9.0ms
a2
Results
AccuracySegmentsBranch
99.6%1(*.f64 a2 a2)
99.6%1(*.f64 a1 a1)
99.6%1(cos.f64 th)
99.6%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
99.6%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.6%1a1
99.6%1a2
99.6%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes152.0ms (2%)

Memory
-66.0MiB live, 86.6MiB allocated; 131ms collecting garbage
Counts
25 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
Outputs
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
Calls

8 calls:

102.0ms
a2
9.0ms
(*.f64 a1 a1)
7.0ms
th
7.0ms
a1
6.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Results
AccuracySegmentsBranch
99.5%1(*.f64 a2 a2)
99.5%1(*.f64 a1 a1)
99.5%1(cos.f64 th)
99.5%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
99.5%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.5%1a1
99.5%1a2
99.5%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes55.0ms (0.7%)

Memory
14.6MiB live, 103.6MiB allocated; 7ms collecting garbage
Counts
24 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (cos.f64 th) (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2)))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
(/.f64 (*.f64 (cos.f64 th) #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (/.f64 (*.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (/.f64 (*.f64 (+.f64 a2 a1) (-.f64 a2 a1)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64)))))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
Calls

8 calls:

9.0ms
a2
8.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
6.0ms
a1
6.0ms
th
6.0ms
(*.f64 a2 a2)
Results
AccuracySegmentsBranch
99.4%1(*.f64 a2 a2)
99.4%1(*.f64 a1 a1)
99.4%1(cos.f64 th)
99.4%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
99.4%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.4%1a1
99.4%1a2
99.4%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes42.0ms (0.5%)

Memory
-1.9MiB live, 56.0MiB allocated; 3ms collecting garbage
Counts
18 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) a2) (cos.f64 th)))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
Calls

8 calls:

7.0ms
a2
5.0ms
a1
5.0ms
th
5.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
5.0ms
(cos.f64 th)
Results
AccuracySegmentsBranch
99.4%1(*.f64 a2 a2)
99.4%1(*.f64 a1 a1)
99.4%1(cos.f64 th)
99.4%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
99.4%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
99.4%1a1
99.4%1a2
99.4%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes37.0ms (0.5%)

Memory
-30.1MiB live, 63.9MiB allocated; 2ms collecting garbage
Counts
16 → 2
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (/.f64 (*.f64 #s(approx (cos th) (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64))) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (* (cos th) a2) (/ a2 (sqrt 2))) (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 th th) a2) a2) #s(literal -1/2 binary64) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 th th) #s(literal 1 binary64)) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 (/.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 (fma.f64 (/.f64 a2 a1) (/.f64 a2 a1) #s(literal 1 binary64)) (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) #s(literal -1/2 binary64) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 th th))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 th th))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 (*.f64 a2 a2) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 a1 a1))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
Calls

8 calls:

6.0ms
(*.f64 a2 a2)
5.0ms
a1
4.0ms
th
4.0ms
a2
4.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Results
AccuracySegmentsBranch
64.4%1(*.f64 a2 a2)
78.2%2(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
69.1%2a2
67.4%2(*.f64 a1 a1)
77.8%2(cos.f64 th)
77.8%2(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
67.4%2a1
66.1%2th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes8.0ms (0.1%)

Memory
15.5MiB live, 15.5MiB allocated; 0ms collecting garbage
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
Calls

3 calls:

2.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
2.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
2.0ms
(cos.f64 th)
Results
AccuracySegmentsBranch
72.6%2(cos.f64 th)
72.6%2(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
73.0%2(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
Compiler

Compiled 26 to 23 computations (11.5% saved)

regimes41.0ms (0.5%)

Memory
-8.9MiB live, 38.0MiB allocated; 2ms collecting garbage
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
Calls

8 calls:

26.0ms
a1
2.0ms
a2
2.0ms
th
2.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
2.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Results
AccuracySegmentsBranch
64.4%1(*.f64 a2 a2)
64.4%1th
64.4%1(*.f64 a1 a1)
64.4%1a1
64.4%1a2
64.4%1(cos.f64 th)
64.4%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
64.4%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes16.0ms (0.2%)

Memory
26.7MiB live, 26.7MiB allocated; 0ms collecting garbage
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (/.f64 (*.f64 a1 a1) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 #s(approx (+ (* a2 a2) (* a1 a1)) (*.f64 a2 a2)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (* (cos th) a2) (sqrt 2)) a2) (* (* a1 a1) (/ (cos th) (sqrt 2)))) (*.f64 (*.f64 a2 a2) (/.f64 #s(approx (cos th) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
Calls

8 calls:

2.0ms
th
2.0ms
a2
2.0ms
a1
2.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
2.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
Results
AccuracySegmentsBranch
64.3%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
64.3%1(cos.f64 th)
64.3%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
64.3%1(*.f64 a1 a1)
64.3%1a1
64.3%1(*.f64 a2 a2)
64.3%1a2
64.3%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

regimes30.0ms (0.4%)

Memory
-26.7MiB live, 22.4MiB allocated; 5ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
Outputs
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
Calls

8 calls:

22.0ms
(*.f64 a2 a2)
1.0ms
(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
1.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
1.0ms
(cos.f64 th)
1.0ms
th
Results
AccuracySegmentsBranch
9.7%1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2)))
9.7%1(cos.f64 th)
9.7%1(/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))
9.7%1(*.f64 a1 a1)
9.7%1(*.f64 a2 a2)
9.7%1a1
9.7%1a2
9.7%1th
Compiler

Compiled 35 to 40 computations (-14.3% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-2.0172839591645127e-136
-5.749884124194373e-186
Compiler

Compiled 22 to 18 computations (18.2% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-2.0172839591645127e-136
-5.749884124194373e-186
Compiler

Compiled 22 to 18 computations (18.2% saved)

simplify51.0ms (0.7%)

Memory
13.5MiB live, 57.7MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067341
1117341
2313341
3994341
44175341
Stop Event
node limit
Calls
Call 1
Inputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))) #s(literal -5237424972633827/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))) #s(literal -5237424972633827/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))
Outputs
(fma.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 #s(literal 2 binary64))) a2 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (*.f64 (cos.f64 th) (fma.f64 a2 a2 (*.f64 a1 a1))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))) (cos.f64 th)) a2))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 (*.f64 (cos.f64 th) a2) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))) #s(literal -5237424972633827/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (*.f64 #s(approx (* (cos th) a2) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th th)) a2 a2)) (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a2 a2))) #s(literal -5237424972633827/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (* (+ (* -1/2 (* th th)) 1) (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2))) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/2 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 a1 a1)))) #s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) (/.f64 (fma.f64 a2 a2 (*.f64 a1 a1)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a2 (/.f64 a2 (sqrt.f64 #s(literal 2 binary64))))))
#s(approx (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))) #s(approx (/ (+ (* a2 a2) (* a1 a1)) (sqrt 2)) (*.f64 a1 (/.f64 a1 (sqrt.f64 #s(literal 2 binary64))))))

derivations313.0ms (4.1%)

Memory
-3.1MiB live, 227.0MiB allocated; 30ms collecting garbage
Stop Event
fuel
Compiler

Compiled 395 to 70 computations (82.3% saved)

preprocess100.0ms (1.3%)

Memory
36.4MiB live, 82.6MiB allocated; 3ms collecting garbage
Remove

(abs th)

Compiler

Compiled 1 080 to 332 computations (69.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...