Linear.Quaternion:$c/ from linear-1.19.1.3, E

Time bar (total: 4.9s)

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
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 17 to 9 computations (47.1% saved)

sample582.0ms (11.9%)

Memory
-7.6MiB live, 1 172.8MiB allocated
Samples
403.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 229.0ms
ival-mult: 120.0ms (52.5% of total)
ival-add: 101.0ms (44.2% of total)
ival-true: 5.0ms (2.2% of total)
ival-assert: 3.0ms (1.3% of total)
Bogosity

preprocess38.0ms (0.8%)

Memory
13.0MiB live, 51.3MiB allocated
Algorithm
egg-herbie
Rules
186×unsub-neg
184×sub-neg
172×cancel-sign-sub
142×distribute-lft-neg-in
124×distribute-rgt-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02292
16780
217456
352054
4111554
5131554
6132554
0715
11313
2239
3359
4439
5469
0468
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
Outputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
Call 2
Inputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(+ (+ (+ (* (neg x) (neg x)) (* y y)) (* y y)) (* y y))
(+ (+ (+ (* x x) (* (neg y) (neg y))) (* (neg y) (neg y))) (* (neg y) (neg y)))
(neg (+ (+ (+ (* (neg x) (neg x)) (* y y)) (* y y)) (* y y)))
(neg (+ (+ (+ (* x x) (* (neg y) (neg y))) (* (neg y) (neg y))) (* (neg y) (neg y))))
(+ (+ (+ (* y y) (* x x)) (* x x)) (* x x))
Outputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(+ (* x x) (* (* y y) 3))
(+ (+ (+ (* (neg x) (neg x)) (* y y)) (* y y)) (* y y))
(+ (* x x) (* (* y y) 3))
(+ (+ (+ (* x x) (* (neg y) (neg y))) (* (neg y) (neg y))) (* (neg y) (neg y)))
(+ (* x x) (* (* y y) 3))
(neg (+ (+ (+ (* (neg x) (neg x)) (* y y)) (* y y)) (* y y)))
(- (* (* y y) -3) (* x x))
(neg (+ (+ (+ (* x x) (* (neg y) (neg y))) (* (neg y) (neg y))) (* (neg y) (neg y))))
(- (* (* y y) -3) (* x x))
(+ (+ (+ (* y y) (* x x)) (* x x)) (* x x))
(+ (* y y) (* x (* x 3)))
Symmetry

(abs x)

(abs y)

explain100.0ms (2%)

Memory
-11.1MiB live, 162.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y))
00-0-(+.f64 (*.f64 x x) (*.f64 y y))
00-0-y
00-0-(*.f64 y y)
00-0-(*.f64 x x)
00-0-(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
00-0-x
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
28.0ms512×0valid
Compiler

Compiled 120 to 32 computations (73.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-add: 6.0ms (47.9% of total)
ival-mult: 6.0ms (47.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
Compiler

Compiled 17 to 7 computations (58.8% saved)

simplify5.0ms (0.1%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff128
(+.f64 (*.f64 x x) (*.f64 y y))
cost-diff320
(+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y))
cost-diff384
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
Rules
52×accelerator-lowering-fma.f32
52×accelerator-lowering-fma.f64
36×+-lowering-+.f64
36×+-lowering-+.f32
28×*-lowering-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0741
11337
22333
33533
44333
54633
04630
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(+ (+ (* x x) (* y y)) (* y y))
(+ (* x x) (* y y))
(* x x)
x
(* y y)
y
Outputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(+ (+ (* x x) (* y y)) (* y y))
(fma.f64 y (+.f64 y y) (*.f64 x x))
(+ (* x x) (* y y))
(fma.f64 x x (*.f64 y y))
(* x x)
(*.f64 x x)
x
(* y y)
(*.f64 y y)
y

localize23.0ms (0.5%)

Memory
-6.2MiB live, 37.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 x x)
accuracy100.0%
(+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y))
accuracy100.0%
(+.f64 (*.f64 x x) (*.f64 y y))
accuracy99.9%
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
Samples
15.0ms256×0valid
Compiler

Compiled 43 to 9 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-add: 3.0ms (48.4% of total)
ival-mult: 3.0ms (48.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.1%)

Memory
8.3MiB live, 8.3MiB allocated
Counts
4 → 84
Calls
Call 1
Inputs
#<alt (+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))>
#<alt (+ (+ (* x x) (* y y)) (* y y))>
#<alt (+ (* x x) (* y y))>
#<alt (* x x)>
Outputs
#<alt (+ (* 2 (pow y 2)) (pow y 2))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 2 (pow y 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (* 2 (pow y 2))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* 2 (pow y 2))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
Calls

21 calls:

TimeVariablePointExpression
1.0ms
x
@0
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
0.0ms
x
@inf
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
0.0ms
y
@inf
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
0.0ms
y
@0
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
0.0ms
y
@inf
(+ (+ (* x x) (* y y)) (* y y))

rewrite558.0ms (11.4%)

Memory
-2.3MiB live, 477.3MiB allocated
Algorithm
batch-egg-rewrite
Rules
9 354×accelerator-lowering-fma.f32
9 354×accelerator-lowering-fma.f64
4 470×*-lowering-*.f32
4 470×*-lowering-*.f64
3 310×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0736
14932
251226
3757426
0818123
Stop Event
iter limit
node limit
Counts
4 → 331
Calls
Call 1
Inputs
(+ (+ (+ (* x x) (* y y)) (* y y)) (* y y))
(+ (+ (* x x) (* y y)) (* y y))
(+ (* x x) (* y y))
(* x x)
Outputs
(+.f64 (*.f64 x x) (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))))
(+.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y)))
(+.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y y))
(+.f64 (*.f64 y (+.f64 y y)) (fma.f64 x x (*.f64 y y)))
(+.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(+.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y (+.f64 y y))))
(-.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 y y)))
(-.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y y)))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (neg.f64 (fma.f64 x x (*.f64 y y)))))
(-.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))) (/.f64 (*.f64 y (+.f64 y y)) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))))
(-.f64 (fma.f64 y y (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))))
(-.f64 (fma.f64 y (+.f64 y y) (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(fma.f64 y y (fma.f64 x x (*.f64 y (+.f64 y y))))
(fma.f64 y (+.f64 y y) (fma.f64 x x (*.f64 y y)))
(fma.f64 y (+.f64 (+.f64 y y) y) (*.f64 x x))
(fma.f64 y (+.f64 y (+.f64 y y)) (*.f64 x x))
(fma.f64 y (*.f64 (+.f64 y y) (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y y)))
(fma.f64 (*.f64 y y) #s(literal 2 binary64) (fma.f64 x x (*.f64 y y)))
(fma.f64 (*.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (fma.f64 x x (*.f64 y y)))
(fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 y (+.f64 y y)))
(fma.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y (+.f64 y y)))
(fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64)))) (*.f64 y y))
(fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 (fma.f64 x x #s(literal 0 binary64)) (fma.f64 x x #s(literal 0 binary64))) (*.f64 y y))
(fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (fma.f64 x x (*.f64 y y)))
(fma.f64 #s(literal 2 binary64) (*.f64 (*.f64 y y) (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y y)))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y (+.f64 y y)))
(fma.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y (+.f64 y y)))
(fma.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y (+.f64 y y)))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y y))
(fma.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y y))
(fma.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y (+.f64 y y)))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))) (*.f64 y y))
(fma.f64 (*.f64 y (+.f64 y y)) (*.f64 y (+.f64 y y)) (fma.f64 x x (*.f64 y y)))
(fma.f64 #s(literal 4 binary64) (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (*.f64 y y)))
(fma.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y (+.f64 y y)))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 y (+.f64 y y)))
(fma.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y y))
(fma.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 x) #s(literal 0 binary64))) (*.f64 y y))
(fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))) (fma.f64 x x (*.f64 y y)))
(fma.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (+.f64 y y))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y)))))) (*.f64 y y))
(fma.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y)))
(fma.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y y))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y y))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 y (+.f64 y y)))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (fma.f64 x x (*.f64 y y)))
(fma.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 x x))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x x))) (*.f64 y y))
(fma.f64 (*.f64 y (*.f64 y y)) (pow.f64 (+.f64 y y) #s(literal 3 binary64)) (fma.f64 x x (*.f64 y y)))
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
(fma.f64 #s(literal 8 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (fma.f64 x x (*.f64 y y)))
(fma.f64 (exp.f64 (log.f64 y)) (exp.f64 (log.f64 y)) (fma.f64 x x (*.f64 y (+.f64 y y))))
(fma.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)) (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(fma.f64 (/.f64 (fma.f64 x x (*.f64 y y)) (+.f64 x y)) (+.f64 x y) (*.f64 y (+.f64 y y)))
(fma.f64 (pow.f64 (*.f64 y (+.f64 y y)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 y (+.f64 y y)) #s(literal 3/2 binary64)) (fma.f64 x x (*.f64 y y)))
(fma.f64 (*.f64 (*.f64 y (+.f64 y y)) y) (+.f64 y y) (fma.f64 x x (*.f64 y y)))
(fma.f64 (*.f64 (*.f64 y (+.f64 y y)) #s(literal 2 binary64)) (*.f64 y y) (fma.f64 x x (*.f64 y y)))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))))) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (*.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))))))) (fma.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (-.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (neg.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(neg.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (neg.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (pow.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) #s(literal 9 binary64))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))))))))))
(/.f64 (fma.f64 y (+.f64 y y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (-.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y)))))
(/.f64 (fma.f64 y (+.f64 y y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (fma.f64 y (+.f64 y y) (-.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (*.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y))))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y)))) (fma.f64 y (+.f64 y y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y y)))) (neg.f64 (fma.f64 x x (*.f64 y y))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y)))
(/.f64 (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (*.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))))
(/.f64 (fma.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (fma.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 0 binary64) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 0 binary64))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 0 binary64)))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 0 binary64) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) #s(literal 0 binary64))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) #s(literal 0 binary64)))
(/.f64 (fma.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (fma.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 0 binary64) (*.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) #s(literal 0 binary64))) (*.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) #s(literal 0 binary64)))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) #s(literal 0 binary64) (*.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 0 binary64))) (*.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 0 binary64)))
(/.f64 (fma.f64 #s(literal 1 binary64) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) #s(literal 0 binary64))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) #s(literal 0 binary64)))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))))) (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))))
(/.f64 (fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) #s(literal 0 binary64) (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) #s(literal 0 binary64))) (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) #s(literal 0 binary64)))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))))) (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64)) (*.f64 (+.f64 x y) (-.f64 y x))))
(/.f64 (fma.f64 #s(literal 0 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 #s(literal 0 binary64) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 #s(literal 0 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 (fma.f64 #s(literal 0 binary64) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 #s(literal 0 binary64) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))))) (*.f64 #s(literal 0 binary64) (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 (fma.f64 #s(literal 0 binary64) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 #s(literal 0 binary64) (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))))) (*.f64 #s(literal 0 binary64) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (fma.f64 #s(literal 0 binary64) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 #s(literal 0 binary64) (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))) (*.f64 #s(literal 0 binary64) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) #s(literal 0 binary64)) (*.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)))))
(/.f64 (fma.f64 #s(literal 0 binary64) (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 #s(literal 0 binary64) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))))) (*.f64 #s(literal 0 binary64) (*.f64 (+.f64 x y) (-.f64 y x))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (*.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (neg.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))) (neg.f64 (neg.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(/.f64 (neg.f64 (fma.f64 y (+.f64 y y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))) (neg.f64 (-.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y y))))) (fma.f64 x x (*.f64 y y)))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y)))) (neg.f64 (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))))
(/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (pow.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) #s(literal 3 binary64))) (fma.f64 x (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 #s(literal 3 binary64) (*.f64 y y))) (*.f64 (*.f64 x x) (*.f64 #s(literal 3 binary64) (*.f64 y y))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (fma.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 #s(literal 3 binary64) (*.f64 y y)))) (-.f64 (*.f64 x x) (*.f64 #s(literal 3 binary64) (*.f64 y y))))
(/.f64 (-.f64 (*.f64 y (+.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (-.f64 (*.f64 y (+.f64 y y)) (fma.f64 x x (*.f64 y y))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (*.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) #s(literal 1 binary64)) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (pow.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) #s(literal 9 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))) (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))) #s(literal -1 binary64))
(*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (*.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (/.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(*.f64 (*.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))))
(*.f64 (fma.f64 y (+.f64 y y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y (+.f64 y y))))))
(*.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x x (*.f64 y y)))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y y))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y)))))) (*.f64 (*.f64 (*.f64 y y) (neg.f64 (fma.f64 x x (*.f64 y y)))) (*.f64 (*.f64 (*.f64 (*.f64 y y) (neg.f64 (fma.f64 x x (*.f64 y y)))) (*.f64 y y)) (neg.f64 (fma.f64 x x (*.f64 y y))))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))))) (*.f64 (*.f64 (*.f64 y y) (neg.f64 (fma.f64 x x (*.f64 y y)))) (-.f64 (*.f64 (*.f64 y y) (neg.f64 (fma.f64 x x (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))))))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))))))) (fma.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64)))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))) (fma.f64 x x (fma.f64 y y #s(literal 0 binary64))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))))))
(+.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))
(+.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y)))
(+.f64 (fma.f64 x x (*.f64 y y)) (*.f64 y y))
(+.f64 (*.f64 y (+.f64 y y)) (*.f64 x x))
(+.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y y)))
(-.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))) (/.f64 (*.f64 y (+.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))))
(-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (neg.f64 (*.f64 x x))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (neg.f64 (*.f64 x x))))
(-.f64 (fma.f64 y y (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(fma.f64 x x (*.f64 y (+.f64 y y)))
(fma.f64 y y (fma.f64 x x (*.f64 y y)))
(fma.f64 y (+.f64 y y) (*.f64 x x))
(fma.f64 y (*.f64 (+.f64 y y) (*.f64 y (+.f64 y y))) (*.f64 x x))
(fma.f64 (*.f64 y y) #s(literal 2 binary64) (*.f64 x x))
(fma.f64 (*.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 x x))
(fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 y y))
(fma.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y y))
(fma.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 #s(literal 2 binary64) (*.f64 (*.f64 y y) (*.f64 y (+.f64 y y))) (*.f64 x x))
(fma.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y y))
(fma.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y y))
(fma.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y y))
(fma.f64 (*.f64 y (+.f64 y y)) (*.f64 y (+.f64 y y)) (*.f64 x x))
(fma.f64 #s(literal 4 binary64) (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 x x))
(fma.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 y y))
(fma.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y (*.f64 y (*.f64 y y)) #s(literal 0 binary64))) (*.f64 x x))
(fma.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)) (*.f64 y y))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 y y))
(fma.f64 (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 y y))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (*.f64 x x))
(fma.f64 (*.f64 y (*.f64 y y)) (pow.f64 (+.f64 y y) #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 #s(literal 8 binary64) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 x x))
(fma.f64 (exp.f64 (log.f64 y)) (exp.f64 (log.f64 y)) (fma.f64 x x (*.f64 y y)))
(fma.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)) (*.f64 y (+.f64 y y)))
(fma.f64 (/.f64 (fma.f64 x x (*.f64 y y)) (+.f64 x y)) (+.f64 x y) (*.f64 y y))
(fma.f64 (pow.f64 (*.f64 y (+.f64 y y)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 y (+.f64 y y)) #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 (*.f64 y (+.f64 y y)) y) (+.f64 y y) (*.f64 x x))
(fma.f64 (*.f64 (*.f64 y (+.f64 y y)) #s(literal 2 binary64)) (*.f64 y y) (*.f64 x x))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 x x (*.f64 y y)) (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))))) (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))) (*.f64 y y))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(neg.f64 (neg.f64 (fma.f64 x x (*.f64 y (+.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 x (neg.f64 x) #s(literal 0 binary64)))
(/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y))) (-.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (+.f64 y y))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y))))))
(/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y))) (fma.f64 y (+.f64 y y) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y)))))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (pow.f64 (fma.f64 x x (*.f64 y y)) #s(literal 9 binary64))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (fma.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (+.f64 y y))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 y (+.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (*.f64 x x)) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 y (+.f64 y y))) (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 x x))) (neg.f64 (*.f64 x x)))
(/.f64 (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y))))))
(/.f64 (-.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (fma.f64 x x #s(literal 0 binary64))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))))) (neg.f64 (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))))) (neg.f64 (fma.f64 x (neg.f64 x) #s(literal 0 binary64))))
(/.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y)))) (neg.f64 (-.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (+.f64 y y))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 y (+.f64 y y)))) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 x x)))) (neg.f64 (neg.f64 (*.f64 x x))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (fma.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))))
(/.f64 (-.f64 (*.f64 y (+.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))) (-.f64 (*.f64 y (+.f64 y y)) (*.f64 x x)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (*.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64))))) (fma.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) #s(literal 1 binary64)) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (pow.f64 (fma.f64 x x (*.f64 y y)) #s(literal 9 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))))
(/.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y)))) #s(literal -1 binary64))
(*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x #s(literal 0 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64)))))
(*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 (fma.f64 x x #s(literal 0 binary64)) (fma.f64 x x #s(literal 0 binary64))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))))
(*.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 x) #s(literal 0 binary64))))
(*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (+.f64 y y))) (*.f64 x (*.f64 x (*.f64 y (+.f64 y y)))))))
(*.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (+.f64 y y))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))))
(*.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 y (+.f64 y y))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x x) (*.f64 y (+.f64 y y)))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (neg.f64 (*.f64 x x))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x x))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 x x (*.f64 y (+.f64 y y))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))) (*.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))))))) (fma.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (-.f64 (*.f64 (*.f64 x x) (neg.f64 (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y))))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))))) (fma.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 y y))) (fma.f64 x x #s(literal 0 binary64))) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))) (fma.f64 x x #s(literal 0 binary64)))) (fma.f64 (*.f64 y y) (fma.f64 x x (*.f64 y (+.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 x x (*.f64 y y)))))
(+.f64 (*.f64 x x) (*.f64 y y))
(+.f64 (*.f64 y y) (*.f64 x x))
(+.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 y x))) (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 y x))))
(fma.f64 x x (*.f64 y y))
(fma.f64 x (/.f64 (*.f64 x (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (*.f64 x x) (/.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 y y (*.f64 x x))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (*.f64 x (*.f64 x x)) (/.f64 x (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (exp.f64 (log.f64 y)) (exp.f64 (log.f64 y)) (*.f64 x x))
(fma.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)) (*.f64 y y))
(fma.f64 (/.f64 x (+.f64 x y)) (/.f64 (*.f64 x (*.f64 x x)) (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x x) (+.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (+.f64 x y)) (/.f64 x (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 x x (*.f64 y y)) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))) (neg.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(neg.f64 (neg.f64 (fma.f64 x x (*.f64 y y))))
(/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 x y) (-.f64 x y)))
(/.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 (fma.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 x x) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))))))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (fma.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (+.f64 x y) (-.f64 y x)))
(/.f64 (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))))) (neg.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x)))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x))))
(/.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y)) (-.f64 x y))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (fma.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))) (fma.f64 x (/.f64 (*.f64 x (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) #s(literal 1 binary64)) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))
(/.f64 (*.f64 (fma.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (fma.f64 (*.f64 x x) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))))))
(/.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 y (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x (*.f64 x x)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) #s(literal -1 binary64))
(*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y)))))
(*.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))))
(*.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (/.f64 (fma.f64 x x (*.f64 y y)) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))))
(*.f64 (neg.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))))
(*.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y)))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 y x))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 y x))))
(*.f64 (/.f64 (fma.f64 x x (*.f64 y y)) (+.f64 x y)) (+.f64 x y))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (fma.f64 x x (*.f64 y y)))
(*.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))))))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x))))))))
(*.f64 (/.f64 (fma.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 y (*.f64 y (*.f64 y y)))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))))) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y y) (*.f64 (+.f64 x y) (-.f64 y x)))))
(*.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 y (*.f64 y (fma.f64 x x (*.f64 y y))))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 x)))
(pow.f64 x #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(*.f64 x x)
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))

simplify471.0ms (9.7%)

Memory
10.2MiB live, 359.1MiB allocated
Algorithm
egg-herbie
Rules
10 540×accelerator-lowering-fma.f32
10 540×accelerator-lowering-fma.f64
6 708×*-lowering-*.f32
6 708×*-lowering-*.f64
1 856×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030624
186552
2215552
3851552
42011552
52650552
64169552
75649552
86638552
97914552
08035498
Stop Event
iter limit
node limit
Counts
84 → 84
Calls
Call 1
Inputs
(+ (* 2 (pow y 2)) (pow y 2))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(pow x 2)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 2 (pow y 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(pow y 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
Outputs
(+ (* 2 (pow y 2)) (pow y 2))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* 3 (pow y 2))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* 3 (pow y 2))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(pow y 2)
(*.f64 y y)
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)

eval117.0ms (2.4%)

Memory
-1.9MiB live, 75.1MiB allocated
Compiler

Compiled 15 923 to 1 031 computations (93.5% saved)

prune109.0ms (2.2%)

Memory
-10.5MiB live, 70.3MiB allocated
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New4096415
Fresh000
Picked101
Done000
Total4106416
Accuracy
100.0%
Counts
416 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
99.9%
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
99.9%
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
81.0%
(+.f64 (*.f64 x x) (*.f64 y y))
57.0%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
58.8%
(*.f64 x x)
Compiler

Compiled 108 to 62 computations (42.6% saved)

simplify6.0ms (0.1%)

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

Found 13 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 y y)
cost-diff0
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
cost-diff0
(*.f64 y y)
cost-diff0
(*.f64 x x)
cost-diff128
(+.f64 (*.f64 x x) (*.f64 y y))
cost-diff0
(*.f64 y #s(literal 3 binary64))
cost-diff0
(*.f64 y (*.f64 y #s(literal 3 binary64)))
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 y y)
cost-diff0
(fma.f64 x x (*.f64 y y))
cost-diff0
(+.f64 y y)
cost-diff256
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
Rules
52×accelerator-lowering-fma.f32
52×accelerator-lowering-fma.f64
36×+-lowering-+.f64
36×+-lowering-+.f32
28×*-lowering-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01379
12579
23671
34771
44971
04967
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* (+ y y) y) (+ (* x x) (* y y)))
(+ y y)
y
(+ (* x x) (* y y))
x
(* y y)
(* x x)
x
(* y (* y 3))
y
(* y 3)
3
(+ (* x x) (* y y))
(* x x)
x
(* y y)
y
(+ (* 3 (* y y)) (* x x))
3
(* y y)
y
(* x x)
x
Outputs
(+ (* (+ y y) y) (+ (* x x) (* y y)))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(+ y y)
(+.f64 y y)
y
(+ (* x x) (* y y))
(fma.f64 x x (*.f64 y y))
x
(* y y)
(*.f64 y y)
(* x x)
(*.f64 x x)
x
(* y (* y 3))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
y
(* y 3)
(*.f64 y #s(literal 3 binary64))
3
#s(literal 3 binary64)
(+ (* x x) (* y y))
(fma.f64 x x (*.f64 y y))
(* x x)
(*.f64 x x)
x
(* y y)
(*.f64 y y)
y
(+ (* 3 (* y y)) (* x x))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
3
#s(literal 3 binary64)
(* y y)
(*.f64 y y)
y
(* x x)
(*.f64 x x)
x

localize70.0ms (1.4%)

Memory
8.3MiB live, 47.9MiB allocated
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 y y)
accuracy100.0%
(*.f64 x x)
accuracy99.9%
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
accuracy100.0%
(*.f64 y y)
accuracy100.0%
(*.f64 x x)
accuracy100.0%
(+.f64 (*.f64 x x) (*.f64 y y))
accuracy100.0%
(*.f64 y #s(literal 3 binary64))
accuracy99.8%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
accuracy100.0%
(*.f64 x x)
accuracy100.0%
(+.f64 y y)
accuracy100.0%
(*.f64 y y)
accuracy100.0%
(fma.f64 x x (*.f64 y y))
accuracy100.0%
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
Samples
53.0ms256×0valid
Compiler

Compiled 73 to 15 computations (79.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 43.0ms
ival-mult: 38.0ms (88.5% of total)
ival-add: 4.0ms (9.3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.1%)

Memory
5.8MiB live, 5.8MiB allocated
Counts
9 → 156
Calls
Call 1
Inputs
#<alt (+ (* (+ y y) y) (+ (* x x) (* y y)))>
#<alt (+ y y)>
#<alt (+ (* x x) (* y y))>
#<alt (* y y)>
#<alt (* x x)>
#<alt (* y (* y 3))>
#<alt (* y 3)>
#<alt (+ (* x x) (* y y))>
#<alt (+ (* 3 (* y y)) (* x x))>
Outputs
#<alt (pow x 2)>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (+ (* 2 (pow y 2)) (pow y 2))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (pow y 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (pow y 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow x 2)>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
Calls

39 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(+ (* 3 (* y y)) (* x x))
0.0ms
y
@inf
(* y (* y 3))
0.0ms
y
@inf
(+ y y)
0.0ms
y
@-inf
(* y 3)
0.0ms
y
@0
(+ y y)

rewrite61.0ms (1.3%)

Memory
1.6MiB live, 40.9MiB allocated
Algorithm
batch-egg-rewrite
Rules
568×accelerator-lowering-fma.f32
568×accelerator-lowering-fma.f64
386×*-lowering-*.f32
386×*-lowering-*.f64
208×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01353
16851
064046
Stop Event
iter limit
iter limit
node limit
Counts
9 → 119
Calls
Call 1
Inputs
(+ (* (+ y y) y) (+ (* x x) (* y y)))
(+ y y)
(+ (* x x) (* y y))
(* y y)
(* x x)
(* y (* y 3))
(* y 3)
(+ (* x x) (* y y))
(+ (* 3 (* y y)) (* x x))
Outputs
(+.f64 (+.f64 y y) (fma.f64 y y (*.f64 x x)))
(+.f64 (*.f64 x x) (fma.f64 y y (+.f64 y y)))
(+.f64 (*.f64 y y) (fma.f64 x x (+.f64 y y)))
(+.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y))
(+.f64 (fma.f64 x x (+.f64 y y)) (*.f64 y y))
(+.f64 (fma.f64 y #s(literal 2 binary64) (*.f64 y y)) (*.f64 x x))
(-.f64 (/.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))) (/.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))))
(fma.f64 y y (fma.f64 x x (+.f64 y y)))
(fma.f64 y (+.f64 y y) (fma.f64 y y (*.f64 x x)))
(fma.f64 y #s(literal 2 binary64) (fma.f64 y y (*.f64 x x)))
(fma.f64 (+.f64 y y) y (fma.f64 y y (*.f64 x x)))
(fma.f64 x x (fma.f64 y y (+.f64 y y)))
(fma.f64 #s(literal 2 binary64) y (fma.f64 y y (*.f64 x x)))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (fma.f64 y y (*.f64 x x)))
(fma.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))) (fma.f64 y y (*.f64 x x)))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (fma.f64 y y (*.f64 x x)))
(fma.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x))) (+.f64 y y))
(fma.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 y y))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (fma.f64 y y (+.f64 y y)))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (fma.f64 x x (+.f64 y y)))
(/.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x))))) (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 (fma.f64 y y (*.f64 x x)) (-.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y)))))
(/.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x))))) (fma.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x)) (-.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (+.f64 y y) (fma.f64 y y (*.f64 x x))))))
(/.f64 (*.f64 (fma.f64 y y (fma.f64 x x (+.f64 y y))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x)))
(/.f64 (neg.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x)))))) (neg.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 (fma.f64 y y (*.f64 x x)) (-.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y (fma.f64 x x (+.f64 y y))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x)))) (neg.f64 (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))))
(/.f64 (+.f64 (pow.f64 (fma.f64 x x (+.f64 y y)) #s(literal 3 binary64)) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (fma.f64 x x (+.f64 y y)) (fma.f64 x x (+.f64 y y)) (-.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (+.f64 y y)) (*.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 (fma.f64 y y (*.f64 x x)) (-.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y)))) (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x)) (*.f64 (fma.f64 y y (fma.f64 x x (+.f64 y y))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x))) (*.f64 (+.f64 y y) (+.f64 y y))) (-.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y)))
(/.f64 (-.f64 (*.f64 (fma.f64 x x (+.f64 y y)) (fma.f64 x x (+.f64 y y))) (*.f64 y (*.f64 y (*.f64 y y)))) (-.f64 (fma.f64 x x (+.f64 y y)) (*.f64 y y)))
(*.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (fma.f64 y y (*.f64 x x)) (fma.f64 y y (*.f64 x x))))) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 (fma.f64 y y (*.f64 x x)) (-.f64 (fma.f64 y y (*.f64 x x)) (+.f64 y y))))))
(*.f64 (*.f64 (fma.f64 y y (fma.f64 x x (+.f64 y y))) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 x x))))
(+.f64 y y)
(+.f64 (*.f64 y y) (*.f64 y y))
(-.f64 (/.f64 (*.f64 y y) #s(literal 0 binary64)) (/.f64 (*.f64 y y) #s(literal 0 binary64)))
(fma.f64 y y (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (neg.f64 (fma.f64 y y #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 y y))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))))
(/.f64 (*.f64 y (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) y) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 0 binary64) y) #s(literal 0 binary64))
(*.f64 y (+.f64 y y))
(*.f64 y #s(literal 2 binary64))
(*.f64 (+.f64 y y) y)
(*.f64 #s(literal 2 binary64) y)
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))))
(*.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 x x) (*.f64 y y))
(+.f64 (*.f64 y y) (*.f64 x x))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 x x))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x)))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 y (*.f64 y (*.f64 y y)) (-.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 x (*.f64 x (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 x y) (-.f64 x y)))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))))) (neg.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x)) (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (-.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 x x) x) x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x))))
(*.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))))
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
(pow.f64 y #s(literal 2 binary64))
(*.f64 y y)
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(pow.f64 x #s(literal 2 binary64))
(*.f64 x x)
(*.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(*.f64 (*.f64 y #s(literal 3 binary64)) y)
(*.f64 y #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) y)
(+.f64 (*.f64 x x) (*.f64 y y))
(+.f64 (*.f64 y y) (*.f64 x x))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 x x))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x)))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (fma.f64 y (*.f64 y (*.f64 y y)) (-.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 x (*.f64 x (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 x y) (-.f64 x y)))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))))) (neg.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x)) (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (-.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (*.f64 x x) x) x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 (*.f64 (*.f64 x x) x) x))))
(*.f64 (*.f64 (fma.f64 y y (*.f64 x x)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))))
(+.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64))))
(+.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x))
(-.f64 (/.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x))) (/.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(fma.f64 (*.f64 y y) #s(literal 3 binary64) (*.f64 x x))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 (*.f64 y #s(literal 3 binary64)) y (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (*.f64 y (*.f64 y #s(literal 3 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x))) (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x))) (fma.f64 x (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 (*.f64 (*.f64 x x) x) x)) (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x)))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x)))) (neg.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 (*.f64 (*.f64 x x) x) x))) (neg.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64))) (fma.f64 (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x)) (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 (*.f64 (*.f64 x x) x) x))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x x) x) x) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64))) (-.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))))
(*.f64 (fma.f64 (*.f64 (*.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) x) x))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64)))) (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)))))
(*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 (*.f64 (*.f64 x x) x) x)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 y (*.f64 y #s(literal 3 binary64))) (*.f64 x x))))

simplify520.0ms (10.7%)

Memory
-15.8MiB live, 268.0MiB allocated
Algorithm
egg-herbie
Rules
13 684×accelerator-lowering-fma.f32
13 684×accelerator-lowering-fma.f64
6 062×*-lowering-*.f32
6 062×*-lowering-*.f64
1 670×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030864
184864
2208864
3815864
42358864
53267864
64819864
76213864
87051864
08177792
Stop Event
iter limit
node limit
Counts
156 → 156
Calls
Call 1
Inputs
(pow x 2)
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(+ (* 2 (pow y 2)) (pow y 2))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(pow x 2)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(pow y 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(pow y 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow x 2)
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(pow x 2)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
Outputs
(pow x 2)
(*.f64 x x)
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 2 (pow y 2)) (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 2 (pow y 2)) (+ (pow x 2) (pow y 2)))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (+ (* 2 (/ (pow y 2) (pow x 2))) (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(pow y 2)
(*.f64 y y)
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(pow y 2)
(*.f64 y y)
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(+ (pow x 2) (pow y 2))
(fma.f64 x x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))

eval50.0ms (1%)

Memory
7.2MiB live, 45.2MiB allocated
Compiler

Compiled 4 274 to 267 computations (93.8% saved)

prune46.0ms (0.9%)

Memory
-15.4MiB live, 24.7MiB allocated
Pruning

10 alts after pruning (6 fresh and 4 done)

PrunedKeptTotal
New3336339
Fresh101
Picked145
Done000
Total33510345
Accuracy
100.0%
Counts
345 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
57.0%
(fma.f64 (+.f64 y y) y (*.f64 y y))
81.5%
(fma.f64 (+.f64 y y) y (*.f64 x x))
99.9%
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
81.0%
(fma.f64 x x (*.f64 y y))
99.9%
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
56.9%
(*.f64 (*.f64 y y) #s(literal 3 binary64))
57.0%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
38.9%
(*.f64 y y)
58.8%
(*.f64 x x)
Compiler

Compiled 135 to 76 computations (43.7% saved)

simplify5.0ms (0.1%)

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

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(+.f64 y y)
cost-diff0
(fma.f64 (+.f64 y y) y (*.f64 x x))
cost-diff0
(*.f64 y y)
cost-diff0
(fma.f64 x x (*.f64 y y))
cost-diff0
(*.f64 y y)
cost-diff0
(*.f64 (*.f64 y y) #s(literal 3 binary64))
cost-diff0
(*.f64 y y)
cost-diff0
(*.f64 y #s(literal 3 binary64))
cost-diff0
(*.f64 y (*.f64 y #s(literal 3 binary64)))
cost-diff0
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
Rules
28×*-lowering-*.f32
28×*-lowering-*.f64
28×accelerator-lowering-fma.f32
28×accelerator-lowering-fma.f64
20×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01363
12263
22663
32963
02960
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* x x) (* y (* y 3)))
x
(* y (* y 3))
y
(* y 3)
3
(* y y)
y
(* (* y y) 3)
(* y y)
y
3
(+ (* x x) (* y y))
x
(* y y)
y
(+ (* (+ y y) y) (* x x))
(+ y y)
y
(* x x)
x
Outputs
(+ (* x x) (* y (* y 3)))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
x
(* y (* y 3))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
y
(* y 3)
(*.f64 y #s(literal 3 binary64))
3
#s(literal 3 binary64)
(* y y)
(*.f64 y y)
y
(* (* y y) 3)
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* y y)
(*.f64 y y)
y
3
#s(literal 3 binary64)
(+ (* x x) (* y y))
(fma.f64 x x (*.f64 y y))
x
(* y y)
(*.f64 y y)
y
(+ (* (+ y y) y) (* x x))
(fma.f64 y (+.f64 y y) (*.f64 x x))
(+ y y)
(+.f64 y y)
y
(* x x)
(*.f64 x x)
x

localize72.0ms (1.5%)

Memory
-7.2MiB live, 28.0MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 (+.f64 y y) y (*.f64 x x))
accuracy100.0%
(+.f64 y y)
accuracy100.0%
(*.f64 x x)
accuracy100.0%
(*.f64 y y)
accuracy100.0%
(fma.f64 x x (*.f64 y y))
accuracy100.0%
(*.f64 y y)
accuracy99.7%
(*.f64 (*.f64 y y) #s(literal 3 binary64))
accuracy100.0%
(*.f64 y y)
accuracy100.0%
(*.f64 y #s(literal 3 binary64))
accuracy100.0%
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
accuracy99.8%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
Samples
57.0ms256×0valid
Compiler

Compiled 62 to 15 computations (75.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 8.0ms (65% of total)
ival-add: 4.0ms (32.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series2.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Counts
9 → 144
Calls
Call 1
Inputs
#<alt (+ (* x x) (* y (* y 3)))>
#<alt (* y (* y 3))>
#<alt (* y 3)>
#<alt (* y y)>
#<alt (* (* y y) 3)>
#<alt (+ (* x x) (* y y))>
#<alt (+ (* (+ y y) y) (* x x))>
#<alt (+ y y)>
#<alt (* x x)>
Outputs
#<alt (* 3 (pow y 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (+ (* 3 (pow y 2)) (pow x 2))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (* 3 y)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (pow y 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))>
#<alt (pow x 2)>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (+ (pow x 2) (pow y 2))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow y 2)>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))>
#<alt (pow x 2)>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (* 2 (pow y 2))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* 2 (pow y 2))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))>
#<alt (* 2 (pow y 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (+ (* 2 (pow y 2)) (pow x 2))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (pow x 2)>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
Calls

36 calls:

TimeVariablePointExpression
0.0ms
x
@0
(+ (* (+ y y) y) (* x x))
0.0ms
x
@inf
(+ (* (+ y y) y) (* x x))
0.0ms
x
@0
(+ (* x x) (* y (* y 3)))
0.0ms
y
@0
(+ (* (+ y y) y) (* x x))
0.0ms
x
@inf
(+ (* x x) (* y (* y 3)))

rewrite91.0ms (1.9%)

Memory
-3.6MiB live, 75.2MiB allocated
Algorithm
batch-egg-rewrite
Rules
506×accelerator-lowering-fma.f32
506×accelerator-lowering-fma.f64
334×*-lowering-*.f32
334×*-lowering-*.f64
176×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01347
16345
056142
Stop Event
iter limit
iter limit
iter limit
unsound
Counts
9 → 96
Calls
Call 1
Inputs
(+ (* x x) (* y (* y 3)))
(* y (* y 3))
(* y 3)
(* y y)
(* (* y y) 3)
(+ (* x x) (* y y))
(+ (* (+ y y) y) (* x x))
(+ y y)
(* x x)
Outputs
(+.f64 (*.f64 x x) (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(+.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))) (/.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))))
(fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 (*.f64 y #s(literal 3 binary64)) y (*.f64 x x))
(fma.f64 (*.f64 y y) #s(literal 3 binary64) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (*.f64 #s(literal 3 binary64) (*.f64 y y)))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))))) (fma.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (-.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x)))))
(/.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))))) (fma.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 #s(literal 3 binary64) (*.f64 y y)))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x)))))) (neg.f64 (fma.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (-.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y))))) (neg.f64 (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (-.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x)))) (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y))))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 y y))) #s(literal 9 binary64)) (*.f64 x (*.f64 x (*.f64 x x)))) (-.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x)))
(*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) #s(literal 27 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (-.f64 (*.f64 #s(literal 3 binary64) (*.f64 y y)) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 #s(literal 3 binary64) (*.f64 y y))) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal -3 binary64) (*.f64 y y)))))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(*.f64 (*.f64 y #s(literal 3 binary64)) y)
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(*.f64 y #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) y)
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
(pow.f64 y #s(literal 2 binary64))
(*.f64 y y)
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(*.f64 (*.f64 y #s(literal 3 binary64)) y)
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(+.f64 (*.f64 x x) (*.f64 y y))
(+.f64 (*.f64 y y) (*.f64 x x))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) (-.f64 x y))))
(fma.f64 x x (*.f64 y y))
(fma.f64 y y (*.f64 x x))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x)))))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 y (*.f64 y (*.f64 y y)) (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 x y) (-.f64 x y)))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x)))) (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 (-.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 x (*.f64 x (*.f64 x x)))) (-.f64 (*.f64 y y) (*.f64 x x)))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 y y) (-.f64 (*.f64 y y) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x x))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))))
(+.f64 (*.f64 x x) (+.f64 y y))
(+.f64 (+.f64 y y) (*.f64 x x))
(-.f64 (/.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (-.f64 (+.f64 y y) (*.f64 x x))) (/.f64 (*.f64 x (*.f64 x (*.f64 x x))) (-.f64 (+.f64 y y) (*.f64 x x))))
(fma.f64 x x (+.f64 y y))
(fma.f64 y (+.f64 y y) (*.f64 x x))
(fma.f64 y #s(literal 2 binary64) (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 #s(literal 2 binary64) y (*.f64 x x))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))) (*.f64 x x))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)) (+.f64 y y))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)))) (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (+.f64 y y)) (*.f64 (+.f64 y y) (+.f64 y y))))
(/.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)))) (fma.f64 x (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 x x) (+.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (+.f64 y y)) (-.f64 (+.f64 y y) (*.f64 x x))) (-.f64 (+.f64 y y) (*.f64 x x)))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y))))) (neg.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (+.f64 y y)) (*.f64 (+.f64 y y) (+.f64 y y)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (+.f64 y y)) (-.f64 (+.f64 y y) (*.f64 x x)))) (neg.f64 (-.f64 (+.f64 y y) (*.f64 x x))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (+.f64 y y)) (*.f64 (+.f64 y y) (+.f64 y y))) (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 y y) (*.f64 x x)) (*.f64 (fma.f64 x x (+.f64 y y)) (-.f64 (+.f64 y y) (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (+.f64 y y))) (-.f64 (*.f64 x x) (+.f64 y y)))
(*.f64 (fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (+.f64 y y)) (*.f64 (+.f64 y y) (+.f64 y y)))))
(*.f64 (*.f64 (fma.f64 x x (+.f64 y y)) (-.f64 (+.f64 y y) (*.f64 x x))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 y y) (*.f64 x x))))
(+.f64 y y)
(+.f64 (*.f64 y y) (*.f64 y y))
(-.f64 (/.f64 (*.f64 y y) #s(literal 0 binary64)) (/.f64 (*.f64 y y) #s(literal 0 binary64)))
(fma.f64 y y (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (neg.f64 (fma.f64 y y #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 y y))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))))
(/.f64 (*.f64 y (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) y) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 0 binary64) y) #s(literal 0 binary64))
(*.f64 y (+.f64 y y))
(*.f64 y #s(literal 2 binary64))
(*.f64 (+.f64 y y) y)
(*.f64 #s(literal 2 binary64) y)
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))))
(*.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(pow.f64 x #s(literal 2 binary64))
(*.f64 x x)
(*.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)))

simplify505.0ms (10.4%)

Memory
-0.0MiB live, 306.2MiB allocated
Algorithm
egg-herbie
Rules
9 530×accelerator-lowering-fma.f32
9 530×accelerator-lowering-fma.f64
7 182×*-lowering-*.f32
7 182×*-lowering-*.f64
1 976×/-lowering-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030780
183780
2209780
3851780
42019780
52553780
63660780
75202780
86866780
08024726
Stop Event
iter limit
node limit
Counts
144 → 144
Calls
Call 1
Inputs
(* 3 (pow y 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(pow x 2)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(+ (* 3 (pow y 2)) (pow x 2))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(* 3 y)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(pow y 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(pow x 2)
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(+ (pow x 2) (pow y 2))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow y 2)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(pow x 2)
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(* 2 (pow y 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(+ (* 2 (pow y 2)) (pow x 2))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
Outputs
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow x 2) (+ 1 (* 3 (/ (pow y 2) (pow x 2)))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(+ (* 3 (pow y 2)) (pow x 2))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* (pow y 2) (+ 3 (/ (pow x 2) (pow y 2))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(* 3 y)
(*.f64 #s(literal 3 binary64) y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(* 3 (pow y 2))
(*.f64 #s(literal 3 binary64) (*.f64 y y))
(pow y 2)
(*.f64 y y)
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(* (pow x 2) (+ 1 (/ (pow y 2) (pow x 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(+ (pow x 2) (pow y 2))
(fma.f64 y y (*.f64 x x))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(* (pow y 2) (+ 1 (/ (pow x 2) (pow y 2))))
(fma.f64 y y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow y 2) (+ 2 (/ (pow x 2) (pow y 2))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* 2 (pow y 2))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(+ (* 2 (pow y 2)) (pow x 2))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* (pow x 2) (+ 1 (* 2 (/ (pow y 2) (pow x 2)))))
(fma.f64 y (*.f64 y #s(literal 2 binary64)) (*.f64 x x))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)

eval60.0ms (1.2%)

Memory
-18.5MiB live, 60.2MiB allocated
Compiler

Compiled 2 871 to 223 computations (92.2% saved)

prune14.0ms (0.3%)

Memory
25.9MiB live, 25.9MiB allocated
Pruning

10 alts after pruning (1 fresh and 9 done)

PrunedKeptTotal
New2720272
Fresh011
Picked055
Done044
Total27210282
Accuracy
100.0%
Counts
282 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
57.0%
(fma.f64 (+.f64 y y) y (*.f64 y y))
81.5%
(fma.f64 (+.f64 y y) y (*.f64 x x))
99.9%
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
81.0%
(fma.f64 x x (*.f64 y y))
99.9%
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
56.9%
(*.f64 (*.f64 y y) #s(literal 3 binary64))
57.0%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
38.9%
(*.f64 y y)
58.8%
(*.f64 x x)
Compiler

Compiled 85 to 48 computations (43.5% saved)

simplify16.0ms (0.3%)

Memory
-32.6MiB live, 6.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 y y)
cost-diff0
(+.f64 y y)
cost-diff256
(fma.f64 (+.f64 y y) y (*.f64 y y))
Rules
26×*-lowering-*.f32
26×*-lowering-*.f64
16×accelerator-lowering-fma.f32
16×accelerator-lowering-fma.f64
12×+-lowering-+.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0514
11112
22212
32812
42912
02912
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* (+ y y) y) (* y y))
(+ y y)
y
(* y y)
Outputs
(+ (* (+ y y) y) (* y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(+ y y)
(+.f64 y y)
y
(* y y)
(*.f64 y y)

localize17.0ms (0.3%)

Memory
35.3MiB live, 35.3MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(+.f64 y y)
accuracy100.0%
(*.f64 y y)
accuracy99.9%
(fma.f64 (+.f64 y y) y (*.f64 y y))
Samples
11.0ms256×0valid
Compiler

Compiled 17 to 8 computations (52.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 3.0ms (54.5% of total)
ival-add: 2.0ms (36.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#<alt (+ (* (+ y y) y) (* y y))>
#<alt (+ y y)>
#<alt (* y y)>
Outputs
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 3 (pow y 2))>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (* 2 y)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
#<alt (pow y 2)>
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(+ (* (+ y y) y) (* y y))
0.0ms
y
@inf
(+ (* (+ y y) y) (* y y))
0.0ms
y
@-inf
(+ (* (+ y y) y) (* y y))
0.0ms
y
@-inf
(+ y y)
0.0ms
y
@inf
(+ y y)

rewrite52.0ms (1.1%)

Memory
-11.0MiB live, 63.6MiB allocated
Algorithm
batch-egg-rewrite
Rules
266×accelerator-lowering-fma.f32
266×accelerator-lowering-fma.f64
126×*-lowering-*.f32
126×*-lowering-*.f64
82×/-lowering-/.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0513
13211
029611
Stop Event
iter limit
iter limit
iter limit
unsound
Counts
3 → 54
Calls
Call 1
Inputs
(+ (* (+ y y) y) (* y y))
(+ y y)
(* y y)
Outputs
(+.f64 (+.f64 y y) (*.f64 y y))
(+.f64 (*.f64 y y) (+.f64 y y))
(-.f64 (/.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64))) (/.f64 (*.f64 y (*.f64 y (*.f64 y y))) (fma.f64 y y #s(literal 0 binary64))))
(fma.f64 y y (+.f64 y y))
(fma.f64 y (+.f64 y y) (*.f64 y y))
(fma.f64 y #s(literal 2 binary64) (*.f64 y y))
(fma.f64 (+.f64 y y) y (*.f64 y y))
(fma.f64 (+.f64 y y) (*.f64 y y) (*.f64 y y))
(fma.f64 (+.f64 y y) (*.f64 y (*.f64 y y)) (*.f64 y y))
(fma.f64 (*.f64 y y) (+.f64 y y) (*.f64 y y))
(fma.f64 #s(literal 2 binary64) y (*.f64 y y))
(fma.f64 #s(literal 2 binary64) (*.f64 y y) (*.f64 y y))
(fma.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))) (*.f64 y y))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (+.f64 y y))
(/.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (-.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) (+.f64 y y)))
(/.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (fma.f64 y (*.f64 y (*.f64 y y)) (-.f64 (*.f64 (+.f64 y y) (+.f64 y y)) (+.f64 y y))))
(/.f64 (*.f64 (fma.f64 y y (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64))) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (neg.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (neg.f64 (-.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) (+.f64 y y))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64)))) (neg.f64 (fma.f64 y y #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) (+.f64 y y)) (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 (fma.f64 y y (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64)))))
(/.f64 (-.f64 (*.f64 y (*.f64 y (*.f64 y y))) (*.f64 (+.f64 y y) (+.f64 y y))) (-.f64 (*.f64 y y) (+.f64 y y)))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(*.f64 (fma.f64 (+.f64 y y) (*.f64 (+.f64 y y) (+.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (+.f64 y y) (+.f64 y y) (*.f64 y (*.f64 y (*.f64 y y)))) (+.f64 y y))))
(*.f64 (*.f64 (fma.f64 y y (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))))
(*.f64 (*.f64 #s(literal 3 binary64) y) y)
(+.f64 y y)
(+.f64 (*.f64 y y) (*.f64 y y))
(-.f64 (/.f64 (*.f64 y y) #s(literal 0 binary64)) (/.f64 (*.f64 y y) #s(literal 0 binary64)))
(fma.f64 y y (*.f64 y y))
(fma.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)) (*.f64 y y))
(/.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(/.f64 (neg.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (neg.f64 (fma.f64 y y #s(literal 0 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 y y))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y #s(literal 0 binary64)) (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))))
(/.f64 (*.f64 y (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y))) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) y) (fma.f64 y y #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 0 binary64) y) #s(literal 0 binary64))
(*.f64 y (+.f64 y y))
(*.f64 y #s(literal 2 binary64))
(*.f64 (+.f64 y y) y)
(*.f64 (+.f64 y y) (*.f64 y y))
(*.f64 (+.f64 y y) (*.f64 y (*.f64 y y)))
(*.f64 (*.f64 y y) (+.f64 y y))
(*.f64 #s(literal 2 binary64) y)
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(*.f64 (*.f64 (fma.f64 y y #s(literal 0 binary64)) (+.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 y y #s(literal 0 binary64))))
(*.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)))
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
(pow.f64 y #s(literal 2 binary64))
(*.f64 y y)
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))

simplify6.0ms (0.1%)

Memory
13.8MiB live, 13.7MiB allocated
Algorithm
egg-herbie
Rules
18×*-lowering-*.f32
18×*-lowering-*.f64
*-commutative
pow-lowering-pow.f64
pow-lowering-pow.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06132
19132
213132
314132
014132
Stop Event
iter limit
saturated
Counts
36 → 36
Calls
Call 1
Inputs
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 3 (pow y 2))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
Outputs
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 3 (pow y 2))
(*.f64 y (*.f64 #s(literal 3 binary64) y))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)

eval45.0ms (0.9%)

Memory
-20.4MiB live, 21.4MiB allocated
Compiler

Compiled 1 057 to 120 computations (88.6% saved)

prune52.0ms (1.1%)

Memory
-8.8MiB live, 30.3MiB allocated
Pruning

11 alts after pruning (1 fresh and 10 done)

PrunedKeptTotal
New89190
Fresh000
Picked011
Done099
Total8911100
Accuracy
100.0%
Counts
100 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
57.0%
(fma.f64 (+.f64 y y) y (*.f64 y y))
81.5%
(fma.f64 (+.f64 y y) y (*.f64 x x))
30.6%
(fma.f64 y y (+.f64 y y))
99.9%
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
81.0%
(fma.f64 x x (*.f64 y y))
99.9%
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
56.9%
(*.f64 (*.f64 y y) #s(literal 3 binary64))
57.0%
(*.f64 y (*.f64 y #s(literal 3 binary64)))
38.9%
(*.f64 y y)
58.8%
(*.f64 x x)
Compiler

Compiled 196 to 72 computations (63.3% saved)

regimes52.0ms (1.1%)

Memory
16.3MiB live, 54.7MiB allocated
Counts
14 → 1
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 y y))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 y y))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
Outputs
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
Calls

5 calls:

34.0ms
y
5.0ms
x
4.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
4.0ms
(*.f64 y y)
4.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
100.0%1(*.f64 x x)
100.0%1(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

regimes55.0ms (1.1%)

Memory
5.2MiB live, 40.2MiB allocated
Counts
12 → 1
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 y y))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 y y))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(fma.f64 y (*.f64 y #s(literal 3 binary64)) (*.f64 x x))
Outputs
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
Calls

5 calls:

39.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
4.0ms
y
4.0ms
x
4.0ms
(*.f64 y y)
4.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
99.9%1x
99.9%1y
99.9%1(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
99.9%1(*.f64 x x)
99.9%1(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

regimes46.0ms (1%)

Memory
-8.1MiB live, 34.4MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 y y))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 y y))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
Outputs
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
Calls

5 calls:

32.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
4.0ms
y
4.0ms
x
3.0ms
(*.f64 x x)
3.0ms
(*.f64 y y)
Results
AccuracySegmentsBranch
99.9%1x
99.9%1y
99.9%1(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
99.9%1(*.f64 x x)
99.9%1(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

regimes43.0ms (0.9%)

Memory
-8.9MiB live, 30.9MiB allocated
Counts
9 → 2
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 y y))
(fma.f64 (+.f64 y y) y (*.f64 x x))
(fma.f64 (+.f64 y y) y (*.f64 y y))
Outputs
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(fma.f64 (+.f64 y y) y (*.f64 x x))
Calls

5 calls:

30.0ms
y
3.0ms
x
3.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
3.0ms
(*.f64 y y)
3.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
90.0%2x
85.6%2y
81.5%1(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
90.0%2(*.f64 x x)
85.6%2(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

regimes6.0ms (0.1%)

Memory
11.4MiB live, 11.4MiB allocated
Counts
7 → 2
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 y y))
Outputs
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(fma.f64 x x (*.f64 y y))
Calls

2 calls:

3.0ms
x
2.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
89.8%2x
89.8%2(*.f64 x x)
Compiler

Compiled 8 to 5 computations (37.5% saved)

regimes9.0ms (0.2%)

Memory
17.7MiB live, 17.7MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
(*.f64 y (*.f64 y #s(literal 3 binary64)))
(*.f64 (*.f64 y y) #s(literal 3 binary64))
Outputs
(*.f64 x x)
(*.f64 y (*.f64 y #s(literal 3 binary64)))
Calls

4 calls:

2.0ms
x
2.0ms
y
2.0ms
(*.f64 y y)
2.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
84.1%2y
84.1%2(*.f64 y y)
79.1%2x
79.1%2(*.f64 x x)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes37.0ms (0.8%)

Memory
-18.8MiB live, 21.0MiB allocated
Counts
3 → 2
Calls
Call 1
Inputs
(*.f64 x x)
(*.f64 y y)
(fma.f64 y y (+.f64 y y))
Outputs
(*.f64 x x)
(*.f64 y y)
Calls

5 calls:

29.0ms
y
2.0ms
x
2.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
2.0ms
(*.f64 y y)
2.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
66.7%2x
66.7%2(*.f64 x x)
61.5%2(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
78.0%2y
78.0%2(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

regimes6.0ms (0.1%)

Memory
14.3MiB live, 14.3MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 x x)
Outputs
(*.f64 x x)
Calls

5 calls:

1.0ms
y
1.0ms
x
1.0ms
(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
1.0ms
(*.f64 x x)
1.0ms
(*.f64 y y)
Results
AccuracySegmentsBranch
58.8%1(+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y))
58.8%1x
58.8%1(*.f64 x x)
58.8%1y
58.8%1(*.f64 y y)
Compiler

Compiled 33 to 17 computations (48.5% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.191260202989636e-289
6.754688746269586e-277
Compiler

Compiled 20 to 12 computations (40% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.191260202989636e-289
6.754688746269586e-277
Compiler

Compiled 20 to 12 computations (40% saved)

bsearch0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.163695206155109e+87
2.000107179621155e+94
Compiler

Compiled 16 to 12 computations (25% saved)

bsearch0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.911281153380695e+305
+inf
Compiler

Compiled 16 to 12 computations (25% saved)

simplify38.0ms (0.8%)

Memory
-25.1MiB live, 14.6MiB allocated
Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02392
12592
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(if (<=.f64 (*.f64 x x) #s(literal 5486124068793689/5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512 binary64)) (*.f64 y (*.f64 y #s(literal 3 binary64))) (fma.f64 (+.f64 y y) y (*.f64 x x)))
(if (<=.f64 (*.f64 x x) #s(literal 5486124068793689/5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512 binary64)) (*.f64 y (*.f64 y #s(literal 3 binary64))) (fma.f64 x x (*.f64 y y)))
(if (<=.f64 (*.f64 y y) #s(literal 4999999999999999797083622281751813657459980448242257198348695049033519614754772127580160 binary64)) (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64))))
(if (<=.f64 (*.f64 y y) #s(literal 1000000000000000017216064596736454828831087825013238982328892017892380671244575047987920451875459594568606138861698291060311049225532948520696938805711440650122628514669428460356992624968028329550689224175284346730060716088829214255439694630119794546505512415617982143262670862918816362862119154749127262208 binary64)) (*.f64 x x) (*.f64 y y))
(*.f64 x x)
Outputs
(fma.f64 (+.f64 y y) y (fma.f64 x x (*.f64 y y)))
(fma.f64 x x (*.f64 y (*.f64 y #s(literal 3 binary64))))
(fma.f64 #s(literal 3 binary64) (*.f64 y y) (*.f64 x x))
(if (<=.f64 (*.f64 x x) #s(literal 5486124068793689/5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512 binary64)) (*.f64 y (*.f64 y #s(literal 3 binary64))) (fma.f64 (+.f64 y y) y (*.f64 x x)))
(if (<=.f64 (*.f64 x x) #s(literal 5486124068793689/5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512 binary64)) (*.f64 y (*.f64 y #s(literal 3 binary64))) (fma.f64 x x (*.f64 y y)))
(if (<=.f64 (*.f64 y y) #s(literal 4999999999999999797083622281751813657459980448242257198348695049033519614754772127580160 binary64)) (*.f64 x x) (*.f64 y (*.f64 y #s(literal 3 binary64))))
(if (<=.f64 (*.f64 y y) #s(literal 1000000000000000017216064596736454828831087825013238982328892017892380671244575047987920451875459594568606138861698291060311049225532948520696938805711440650122628514669428460356992624968028329550689224175284346730060716088829214255439694630119794546505512415617982143262670862918816362862119154749127262208 binary64)) (*.f64 x x) (*.f64 y y))
(*.f64 x x)

soundness796.0ms (16.3%)

Memory
31.3MiB live, 584.9MiB allocated
Rules
13 684×accelerator-lowering-fma.f32
13 684×accelerator-lowering-fma.f64
10 540×accelerator-lowering-fma.f32
10 540×accelerator-lowering-fma.f64
9 354×accelerator-lowering-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030864
184864
2208864
3815864
42358864
53267864
64819864
76213864
87051864
08177792
01353
16851
064046
0736
14932
251226
3757426
0818123
030624
186552
2215552
3851552
42011552
52650552
64169552
75649552
86638552
97914552
08035498
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 227 to 99 computations (56.4% saved)

preprocess85.0ms (1.8%)

Memory
-25.6MiB live, 215.5MiB allocated
Remove

(abs y)

(abs x)

Compiler

Compiled 300 to 98 computations (67.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...