Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, A

Time bar (total: 5.6s)

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB 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 9 to 7 computations (22.2% saved)

sample555.0ms (9.8%)

Memory
14.0MiB live, 870.4MiB allocated
Samples
372.0ms8 254×0valid
0.0ms2valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 198.0ms
ival-add: 89.0ms (45% of total)
ival-mult: 61.0ms (30.8% of total)
ival-sub: 40.0ms (20.2% of total)
ival-true: 6.0ms (3% of total)
ival-assert: 3.0ms (1.5% of total)
adjust: 0.0ms (0% of total)
Bogosity

preprocess62.0ms (1.1%)

Memory
21.0MiB live, 106.0MiB allocated
Algorithm
egg-herbie
Rules
496×lower-fma.f64
496×lower-fma.f32
234×cancel-sign-sub-inv
200×sub-neg
192×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
15635
216535
345035
495735
5122435
6124835
057
087
1177
2377
3667
41087
52237
63467
75097
85447
95467
05466
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(-.f64 (+.f64 x y) (*.f64 x y))
Outputs
(-.f64 (+.f64 x y) (*.f64 x y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
Symmetry

(sort x y)

explain86.0ms (1.5%)

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

Compiled 52 to 24 computations (53.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 4.0ms (44.3% of total)
ival-add: 3.0ms (33.2% of total)
ival-sub: 2.0ms (22.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

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

Compiled 9 to 5 computations (44.4% saved)

simplify28.0ms (0.5%)

Memory
8.8MiB live, 47.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x y)
cost-diff0
(+.f64 x y)
cost-diff128
(-.f64 (+.f64 x y) (*.f64 x y))
Rules
496×lower-fma.f64
496×lower-fma.f32
192×lower-*.f32
190×lower-*.f64
136×lower-+.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0515
0815
11715
23715
36615
410815
522315
634615
750915
854415
954615
054614
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(-.f64 (+.f64 x y) (*.f64 x y))
(+.f64 x y)
x
y
(*.f64 x y)
Outputs
(-.f64 (+.f64 x y) (*.f64 x y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+.f64 x y)
x
y
(*.f64 x y)

localize17.0ms (0.3%)

Memory
-9.3MiB live, 29.6MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(-.f64 (+.f64 x y) (*.f64 x y))
accuracy100.0%
(+.f64 x y)
accuracy100.0%
(*.f64 x y)
Samples
10.0ms256×0valid
Compiler

Compiled 17 to 7 computations (58.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 2.0ms (45.6% of total)
ival-sub: 1.0ms (22.8% of total)
ival-add: 1.0ms (22.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.1%)

Memory
5.5MiB live, 5.5MiB allocated
Counts
3 → 72
Calls
Call 1
Inputs
#<alt (-.f64 (+.f64 x y) (*.f64 x y))>
#<alt (+.f64 x y)>
#<alt (*.f64 x y)>
Outputs
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt y>
#<alt (+ x y)>
#<alt (+ x y)>
#<alt (+ x y)>
#<alt x>
#<alt (* x (+ 1 (/ y x)))>
#<alt (* x (+ 1 (/ y x)))>
#<alt (* x (+ 1 (/ y x)))>
#<alt x>
#<alt (* -1 (* x (- (* -1 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) 1)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) 1)))>
#<alt x>
#<alt (+ x y)>
#<alt (+ x y)>
#<alt (+ x y)>
#<alt y>
#<alt (* y (+ 1 (/ x y)))>
#<alt (* y (+ 1 (/ x y)))>
#<alt (* y (+ 1 (/ x y)))>
#<alt y>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) 1)))>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
Calls

18 calls:

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

simplify807.0ms (14.3%)

Memory
9.8MiB live, 677.9MiB allocated
Algorithm
egg-herbie
Rules
19 840×lower-fma.f64
19 840×lower-fma.f32
4 022×associate-*r/
3 856×lower-/.f32
3 856×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042280
1125280
2282280
3848280
42183280
53268280
64153280
74757280
85102280
95329280
105424280
115464280
125484280
135484280
145502280
155502280
09585262
Stop Event
iter limit
node limit
Counts
72 → 64
Calls
Call 1
Inputs
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
y
(+ x y)
(+ x y)
(+ x y)
x
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
x
(+ x y)
(+ x y)
(+ x y)
y
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
y
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
x
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
x
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
y
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite379.0ms (6.7%)

Memory
6.6MiB live, 493.0MiB allocated
Algorithm
batch-egg-rewrite
Rules
5 194×lower-fma.f64
5 194×lower-fma.f32
4 332×lower-*.f32
4 330×lower-*.f64
2 332×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0513
0813
14113
235613
3536213
0830413
Stop Event
iter limit
node limit
iter limit
Counts
3 → 189
Calls
Call 1
Inputs
(-.f64 (+.f64 x y) (*.f64 x y))
(+.f64 x y)
(*.f64 x y)
Outputs
(+.f64 x (-.f64 y (*.f64 x y)))
(+.f64 y (-.f64 x (*.f64 x y)))
(+.f64 (+.f64 x y) (neg.f64 (*.f64 x y)))
(+.f64 (neg.f64 (*.f64 x y)) (+.f64 x y))
(+.f64 (-.f64 y (*.f64 x y)) x)
(+.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(+.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (neg.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(+.f64 (-.f64 x (*.f64 x y)) y)
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y)))) #s(literal -1 binary64)))
(-.f64 y (-.f64 (*.f64 x y) x))
(-.f64 (+.f64 x y) (*.f64 x y))
(-.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(-.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (-.f64 (/.f64 (*.f64 y y) (-.f64 x y)) (neg.f64 (*.f64 x y))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (fma.f64 y (/.f64 y (-.f64 x y)) (*.f64 x y)))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x y) (+.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 (-.f64 x y) (*.f64 x y))) (/.f64 (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (+.f64 (-.f64 x y) (*.f64 x y))))
(-.f64 (+.f64 (+.f64 x y) #s(literal 0 binary64)) (*.f64 x y))
(-.f64 (fma.f64 x (neg.f64 y) (/.f64 (*.f64 x x) (-.f64 x y))) (/.f64 (*.f64 y y) (-.f64 x y)))
(fma.f64 x (neg.f64 y) (+.f64 x y))
(fma.f64 y (neg.f64 x) (+.f64 x y))
(fma.f64 (+.f64 x y) (*.f64 (-.f64 x y) (/.f64 #s(literal 1 binary64) (-.f64 x y))) (neg.f64 (*.f64 x y)))
(fma.f64 (+.f64 x y) (/.f64 (+.f64 x y) (fma.f64 x y (+.f64 x y))) (neg.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(fma.f64 (+.f64 x y) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (+.f64 x y) (/.f64 (-.f64 x y) (-.f64 x y)) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 x y) #s(literal -1 binary64) (+.f64 x y))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))) (neg.f64 (*.f64 x y)))
(fma.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y)))) (neg.f64 (*.f64 x y)))
(fma.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (/.f64 (+.f64 x y) (fma.f64 x (-.f64 x y) (*.f64 y y))) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y))) (neg.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(fma.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (/.f64 (+.f64 x y) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (neg.f64 (*.f64 x y)))
(fma.f64 (neg.f64 x) y (+.f64 x y))
(fma.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)))) (neg.f64 (*.f64 x y)))
(fma.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 x y))) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 (fma.f64 y y (*.f64 (*.f64 x y) (fma.f64 x y y))) (-.f64 y (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 y y (*.f64 (*.f64 x y) (fma.f64 x y y)))) x)
(fma.f64 #s(literal 1 binary64) (+.f64 x y) (neg.f64 (*.f64 x y)))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (*.f64 x y)))
(fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y)) (neg.f64 (*.f64 x y)))
(fma.f64 (neg.f64 y) x (+.f64 x y))
(fma.f64 #s(literal -1 binary64) (*.f64 x y) (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 y (-.f64 y (*.f64 x (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x y y)) x)
(fma.f64 (pow.f64 (+.f64 x y) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (+.f64 x y) #s(literal 3/2 binary64)) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (+.f64 (neg.f64 y) #s(literal 1 binary64)) x y)
(fma.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) y x)
(fma.f64 (*.f64 y #s(literal -1 binary64)) x (+.f64 x y))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y) (neg.f64 (*.f64 x y)))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (fma.f64 x (neg.f64 y) (+.f64 x y)) (neg.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y))) (neg.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x y (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (fma.f64 x y (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))) (fma.f64 (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y)))) (-.f64 (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y)))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y)))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))))))) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 (*.f64 y (-.f64 y x)) (*.f64 y (*.f64 (-.f64 y x) (*.f64 y (-.f64 y x)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (fma.f64 (*.f64 y (-.f64 y x)) (-.f64 (*.f64 y (-.f64 y x)) (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 x x))) (neg.f64 (*.f64 x y)))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))) (neg.f64 (*.f64 x y)))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (fma.f64 x x (*.f64 y (+.f64 x y))) (neg.f64 (*.f64 x y)))
(neg.f64 (/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (neg.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (neg.f64 (fma.f64 x y (+.f64 x y)))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(neg.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x y (+.f64 x y))) (fma.f64 x (neg.f64 y) (+.f64 x y))) (fma.f64 x y (+.f64 x y))))
(/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))
(/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 x (*.f64 x (*.f64 y y)) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (neg.f64 (*.f64 x y))))))
(/.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (fma.f64 x y (+.f64 x y)))
(/.f64 (neg.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (neg.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 x y (+.f64 x y))) (fma.f64 x (neg.f64 y) (+.f64 x y))) (neg.f64 (fma.f64 x y (+.f64 x y))))
(/.f64 (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x))) (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 (-.f64 y (*.f64 x y)) x) (*.f64 x x)))
(/.f64 (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x))) (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y)) (-.f64 (*.f64 x x) (*.f64 x (-.f64 y (*.f64 x y))))))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (*.f64 (fma.f64 x y (+.f64 x y)) (fma.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y))))))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x (*.f64 y y))) (*.f64 (*.f64 x y) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 (-.f64 y (*.f64 x y)) x) (*.f64 x x)) (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 x y) (*.f64 x y)) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (+.f64 (-.f64 x y) (*.f64 x y)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y)))))
(/.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (+.f64 (-.f64 x y) (*.f64 x y))) (+.f64 (-.f64 x y) (*.f64 x y)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (*.f64 (fma.f64 x y (+.f64 x y)) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (*.f64 (fma.f64 x y (+.f64 x y)) (*.f64 x (*.f64 x (*.f64 y y))))) (*.f64 (fma.f64 x y (+.f64 x y)) (fma.f64 x y (+.f64 x y))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) #s(literal 1 binary64)) (fma.f64 x y (+.f64 x y)))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) #s(literal 1 binary64)) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x (*.f64 y y))) (*.f64 (*.f64 x y) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 x y) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 x y (+.f64 x y))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) #s(literal 1 binary64)) (*.f64 (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x y (+.f64 x y))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))))) (neg.f64 (neg.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (fma.f64 x y (+.f64 x y))) (fma.f64 x (neg.f64 y) (+.f64 x y)))) (neg.f64 (neg.f64 (fma.f64 x y (+.f64 x y)))))
(/.f64 (neg.f64 (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x)))) (neg.f64 (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 (-.f64 y (*.f64 x y)) x) (*.f64 x x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (+.f64 (-.f64 x y) (*.f64 x y)))) (neg.f64 (+.f64 (-.f64 x y) (*.f64 x y))))
(/.f64 (fma.f64 y (*.f64 y y) (*.f64 (*.f64 (-.f64 x (*.f64 x y)) (-.f64 x (*.f64 x y))) (-.f64 x (*.f64 x y)))) (fma.f64 y y (-.f64 (*.f64 (-.f64 x (*.f64 x y)) (-.f64 x (*.f64 x y))) (*.f64 y (-.f64 x (*.f64 x y))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (*.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (*.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))))) (fma.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (fma.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))) (*.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))))
(/.f64 (-.f64 (*.f64 y y) (*.f64 (-.f64 x (*.f64 x y)) (-.f64 x (*.f64 x y)))) (-.f64 y (-.f64 x (*.f64 x y))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 y y))) (*.f64 (+.f64 x y) (+.f64 x y))) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y)))
(/.f64 (-.f64 (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x x)) (-.f64 (-.f64 y (*.f64 x y)) x))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))) (*.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))) (fma.f64 (+.f64 x y) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y))))) (fma.f64 (+.f64 x y) (/.f64 (+.f64 x y) (fma.f64 x y (+.f64 x y))) (/.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x y (+.f64 x y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 (*.f64 x (*.f64 x (*.f64 y y))) (*.f64 (*.f64 x y) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))))) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))) (fma.f64 (+.f64 x y) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y)))) (fma.f64 (*.f64 x (*.f64 x (*.f64 y y))) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y)))) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 (+.f64 x y) (+.f64 x y))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 (-.f64 y (*.f64 x y)) x) (*.f64 x x)) (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (-.f64 x y) (*.f64 x y)) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (+.f64 (-.f64 x y) (*.f64 x y)))) #s(literal -1 binary64))
(*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (/.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))))
(*.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y))))
(*.f64 (fma.f64 x y (+.f64 x y)) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y)))))
(*.f64 (fma.f64 x y (+.f64 x y)) (/.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))))
(*.f64 (neg.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))))))
(*.f64 (*.f64 (neg.f64 (fma.f64 x y (+.f64 x y))) (fma.f64 x (neg.f64 y) (+.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x y (+.f64 x y)))))
(*.f64 (fma.f64 (-.f64 y (*.f64 x y)) (*.f64 (-.f64 y (*.f64 x y)) (-.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 y (*.f64 x y)) (-.f64 (-.f64 y (*.f64 x y)) x) (*.f64 x x))))
(*.f64 #s(literal 1 binary64) (fma.f64 x (neg.f64 y) (+.f64 x y)))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x y (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))))
(*.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (+.f64 (-.f64 x y) (*.f64 x y))) (/.f64 #s(literal 1 binary64) (+.f64 (-.f64 x y) (*.f64 x y))))
(*.f64 (/.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))))) (fma.f64 (*.f64 x y) (-.f64 (*.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y))))
(*.f64 (/.f64 (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (*.f64 (fma.f64 x (neg.f64 y) (+.f64 x y)) (fma.f64 x y (+.f64 x y)))) (fma.f64 x (neg.f64 y) (+.f64 x y)))
(*.f64 (/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (fma.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y)))) (*.f64 (*.f64 (fma.f64 x y (+.f64 x y)) (fma.f64 x y (+.f64 x y))) (fma.f64 x y (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))) (fma.f64 (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y)))) (-.f64 (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y)))) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y)))))
(*.f64 (/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 x (*.f64 y y))))) (*.f64 (fma.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))))))) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 x (*.f64 y (fma.f64 x y (+.f64 x y))))))
(+.f64 x y)
(+.f64 y x)
(+.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (+.f64 x y))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (+.f64 x y)) #s(literal 1 binary64)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y)))
(-.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x)))
(fma.f64 x (/.f64 x (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(fma.f64 (/.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(fma.f64 (/.f64 (*.f64 x x) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (fma.f64 x x (*.f64 y (+.f64 x y))) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(neg.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)))))
(neg.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (neg.f64 (-.f64 x y))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (-.f64 x y)))
(/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 x (-.f64 x y) (*.f64 y y)))
(/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (-.f64 x y))
(/.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y))))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (neg.f64 (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (fma.f64 x (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 x y)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 y x) (*.f64 (+.f64 x y) (-.f64 y x))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (-.f64 y x))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (*.f64 (-.f64 x y) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (-.f64 x y) (fma.f64 x x (*.f64 y y))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (-.f64 x y)) (*.f64 (-.f64 x y) (*.f64 y y))) (*.f64 (-.f64 x y) (-.f64 x y)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) #s(literal 1 binary64)) (fma.f64 x (-.f64 x y) (*.f64 y y)))
(/.f64 (*.f64 (fma.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) #s(literal 1 binary64)) (*.f64 (fma.f64 x (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))))) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y)) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y)))) (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (fma.f64 x x (*.f64 y y)) (-.f64 x y)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (neg.f64 (-.f64 x y))))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x))) (neg.f64 (-.f64 y x)))
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y))) (/.f64 (*.f64 x x) (-.f64 x y))) (*.f64 (*.f64 (/.f64 (*.f64 y y) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y))) (/.f64 (*.f64 y y) (-.f64 x y)))) (fma.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y)) (fma.f64 (/.f64 (*.f64 y y) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y)) (*.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y))) (*.f64 (/.f64 (*.f64 y y) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y)))) (fma.f64 x (/.f64 x (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y))))
(/.f64 (*.f64 (fma.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y)))) (fma.f64 x (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (-.f64 x y))) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (-.f64 x y))) (fma.f64 x x (*.f64 y y)))
(pow.f64 (+.f64 x y) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 y x) (*.f64 (+.f64 x y) (-.f64 y x))) #s(literal -1 binary64))
(*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (/.f64 #s(literal 1 binary64) (-.f64 x y))))
(*.f64 (+.f64 x y) (/.f64 (-.f64 x y) (-.f64 x y)))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y)))))
(*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (/.f64 (+.f64 x y) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)))))
(*.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 x y))))
(*.f64 #s(literal 1 binary64) (+.f64 x y))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y))
(*.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 (*.f64 y (-.f64 y x)) (*.f64 y (*.f64 (-.f64 y x) (*.f64 y (-.f64 y x)))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (fma.f64 (*.f64 y (-.f64 y x)) (-.f64 (*.f64 y (-.f64 y x)) (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 x x))))
(*.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 x x (*.f64 y (+.f64 x y))) (-.f64 x y))) (fma.f64 x x (*.f64 y (+.f64 x y))))
(exp.f64 (*.f64 (log.f64 (*.f64 x y)) #s(literal 1 binary64)))
(pow.f64 (*.f64 x y) #s(literal 1 binary64))
(*.f64 x y)
(*.f64 y x)

eval42.0ms (0.7%)

Memory
1.2MiB live, 39.2MiB allocated
Compiler

Compiled 7 392 to 553 computations (92.5% saved)

prune53.0ms (0.9%)

Memory
-4.5MiB live, 34.5MiB allocated
Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2503253
Fresh000
Picked101
Done000
Total2513254
Accuracy
100.0%
Counts
254 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
68.4%
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
56.5%
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
Compiler

Compiled 25 to 13 computations (48% saved)

simplify26.0ms (0.5%)

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

Found 9 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 #s(literal 1 binary64) x)
cost-diff0
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
cost-diff0
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
cost-diff0
(*.f64 y x)
cost-diff0
(-.f64 y (*.f64 y x))
cost-diff0
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
cost-diff0
(*.f64 y x)
cost-diff0
(-.f64 x (*.f64 y x))
cost-diff0
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
Rules
496×lower-fma.f32
494×lower-fma.f64
192×lower-*.f32
190×lower-*.f64
136×lower-+.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01472
02073
14373
26769
39969
417669
530269
644269
754569
854769
054769
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
(-.f64 x (*.f64 y x))
x
(*.f64 y x)
y
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
(-.f64 y (*.f64 y x))
y
(*.f64 y x)
x
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
y
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
Outputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (fma.f64 y (neg.f64 x) x))
(-.f64 x (*.f64 y x))
(fma.f64 y (neg.f64 x) x)
x
(*.f64 y x)
(*.f64 x y)
y
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (fma.f64 x (neg.f64 y) y))
(-.f64 y (*.f64 y x))
(fma.f64 x (neg.f64 y) y)
y
(*.f64 y x)
(*.f64 x y)
x
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
#s(approx (- (+ x y) (* x y)) (fma.f64 x (-.f64 #s(literal 1 binary64) y) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(fma.f64 x (-.f64 #s(literal 1 binary64) y) y)
y
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x

localize64.0ms (1.1%)

Memory
-27.3MiB live, 51.7MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
accuracy100.0%
(-.f64 #s(literal 1 binary64) x)
accuracy100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
accuracy100.0%
(-.f64 y (*.f64 y x))
accuracy100.0%
(*.f64 y x)
accuracy68.4%
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
accuracy100.0%
(*.f64 y x)
accuracy100.0%
(-.f64 x (*.f64 y x))
accuracy56.5%
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
Samples
30.0ms256×0valid
Compiler

Compiled 56 to 14 computations (75% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-sub: 6.0ms (42.3% of total)
ival-mult: 5.0ms (35.2% of total)
ival-add: 3.0ms (21.1% 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
6.0MiB live, 6.0MiB allocated
Counts
8 → 180
Calls
Call 1
Inputs
#<alt #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))>
#<alt (-.f64 x (*.f64 y x))>
#<alt (*.f64 y x)>
#<alt #s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))>
#<alt (-.f64 y (*.f64 y x))>
#<alt #s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))>
#<alt (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)>
#<alt (-.f64 #s(literal 1 binary64) x)>
Outputs
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (- 1 y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt x>
#<alt (+ x (* -1 (* x y)))>
#<alt (+ x (* -1 (* x y)))>
#<alt (+ x (* -1 (* x y)))>
#<alt (* -1 (* x y))>
#<alt (* y (- (/ x y) x))>
#<alt (* y (- (/ x y) x))>
#<alt (* y (- (/ x y) x))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (* -1 x))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (* -1 x))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (* -1 x))))>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt (* x y)>
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt y>
#<alt (+ y (* -1 (* x y)))>
#<alt (+ y (* -1 (* x y)))>
#<alt (+ y (* -1 (* x y)))>
#<alt (* -1 (* x y))>
#<alt (* x (- (/ y x) y))>
#<alt (* x (- (/ y x) y))>
#<alt (* x (- (/ y x) y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- 1 x))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt y>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* -1 (* x (- y 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt 1>
#<alt (+ 1 (* -1 x))>
#<alt (+ 1 (* -1 x))>
#<alt (+ 1 (* -1 x))>
#<alt (* -1 x)>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* -1 x)>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
Calls

45 calls:

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

simplify247.0ms (4.4%)

Memory
35.5MiB live, 386.9MiB allocated
Algorithm
egg-herbie
Rules
4 142×lower-*.f64
4 142×lower-*.f32
3 496×lower-fma.f64
3 496×lower-fma.f32
2 100×div-sub
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067924
1203924
2462924
31409924
42758924
53747924
64337924
75031924
85554924
96080924
107109924
08083852
Stop Event
iter limit
node limit
Counts
180 → 170
Calls
Call 1
Inputs
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (* -1 y)))
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(* -1 (* x y))
(* y (- (/ x y) x))
(* y (- (/ x y) x))
(* y (- (/ x y) x))
(* -1 (* x y))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
y
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(* -1 (* x y))
(* x (- (/ y x) y))
(* x (- (/ y x) y))
(* x (- (/ y x) y))
(* -1 (* x y))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
y
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* -1 (* x (- y 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
x
(+ x (* -1 (* x y)))
(-.f64 x (*.f64 y x))
(+ x (* -1 (* x y)))
(-.f64 x (*.f64 y x))
(+ x (* -1 (* x y)))
(-.f64 x (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* y (- (/ x y) x))
(-.f64 x (*.f64 y x))
(* y (- (/ x y) x))
(-.f64 x (*.f64 y x))
(* y (- (/ x y) x))
(-.f64 x (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(-.f64 x (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(-.f64 x (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (* -1 x))))
(-.f64 x (*.f64 y x))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
y
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
y
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- y 1)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite341.0ms (6%)

Memory
-22.9MiB live, 487.8MiB allocated
Algorithm
batch-egg-rewrite
Rules
5 916×lower-fma.f32
5 914×lower-fma.f64
4 714×lower-*.f32
4 712×lower-*.f64
4 090×lower-/.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01462
02063
111163
280959
0847359
Stop Event
iter limit
node limit
iter limit
Counts
8 → 309
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
(-.f64 x (*.f64 y x))
(*.f64 y x)
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
(-.f64 y (*.f64 y x))
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(-.f64 #s(literal 1 binary64) x)
Outputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 x y)))
(+.f64 x (neg.f64 (*.f64 x y)))
(+.f64 (neg.f64 (*.f64 x y)) x)
(+.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(+.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x))))
(-.f64 x (*.f64 x y))
(-.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(-.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)))
(-.f64 (+.f64 x #s(literal 0 binary64)) (*.f64 x y))
(fma.f64 x #s(literal 1 binary64) (neg.f64 (*.f64 x y)))
(fma.f64 x (neg.f64 y) x)
(fma.f64 y (neg.f64 x) x)
(fma.f64 #s(literal 1 binary64) x (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 x (*.f64 x x)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (fma.f64 x y x)) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x))))
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 y) x x)
(fma.f64 #s(literal -1 binary64) (*.f64 x y) x)
(fma.f64 (/.f64 x (+.f64 y #s(literal 1 binary64))) (/.f64 x x) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x))))
(neg.f64 (/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(neg.f64 (/.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y)))) (neg.f64 (fma.f64 x y x))))
(neg.f64 (/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(neg.f64 (/.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y))))) (fma.f64 x y x)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) x))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y)))))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (fma.f64 x x (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) x))))
(/.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 x y x))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y)))) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y)))) (neg.f64 (fma.f64 x x (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) x)))))
(/.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y))))) (neg.f64 (fma.f64 x y x)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (fma.f64 x y x)) (*.f64 (fma.f64 x y x) (*.f64 x (*.f64 y (*.f64 x y))))) (*.f64 (fma.f64 x y x) (fma.f64 x y x)))
(/.f64 (*.f64 (fma.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (neg.f64 (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 x (*.f64 x x))))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 y y) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y)))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 y (*.f64 y y) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 y y) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y)))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 x x) (*.f64 x x) (*.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x (*.f64 y (*.f64 x y)) (*.f64 x x)))) (fma.f64 x y x)))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 y y #s(literal 1 binary64)) (*.f64 x x)) (*.f64 x (-.f64 x (*.f64 y (*.f64 x y))))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 y y #s(literal 1 binary64)) (*.f64 x x)) (fma.f64 x y x)))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y)))))) (neg.f64 (neg.f64 (fma.f64 x y x))))
(/.f64 (fma.f64 (*.f64 x y) (*.f64 (*.f64 x y) (neg.f64 (*.f64 x y))) (*.f64 x (*.f64 x x))) (fma.f64 x (*.f64 y (*.f64 x y)) (-.f64 (*.f64 x x) (*.f64 (neg.f64 (*.f64 x y)) x))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (fma.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (/.f64 (*.f64 x x) (fma.f64 x y x)) (fma.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)) (*.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x))))))
(/.f64 (-.f64 (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 x x)) (-.f64 (neg.f64 (*.f64 x y)) x))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))) (*.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))) (+.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (/.f64 (*.f64 x x) (fma.f64 x y x))) (*.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)))) (+.f64 (/.f64 (*.f64 x x) (fma.f64 x y x)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y))) #s(literal -1 binary64))
(*.f64 x (+.f64 (neg.f64 y) #s(literal 1 binary64)))
(*.f64 x (+.f64 #s(literal 1 binary64) (neg.f64 y)))
(*.f64 x (-.f64 #s(literal 1 binary64) y))
(*.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y)))
(*.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(*.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) x)))))
(*.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x y x)))
(*.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))))
(*.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x y x))))
(*.f64 (+.f64 (neg.f64 y) #s(literal 1 binary64)) x)
(*.f64 (/.f64 (fma.f64 x y x) (+.f64 y #s(literal 1 binary64))) (/.f64 (-.f64 x (*.f64 x y)) x))
(*.f64 x y)
(*.f64 y x)
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 x y)))
(+.f64 y (neg.f64 (*.f64 x y)))
(+.f64 (neg.f64 (*.f64 x y)) y)
(+.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(+.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y))))
(-.f64 y (*.f64 x y))
(-.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(-.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)))
(-.f64 (+.f64 y #s(literal 0 binary64)) (*.f64 x y))
(fma.f64 x (neg.f64 y) y)
(fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 x y)))
(fma.f64 y (neg.f64 x) y)
(fma.f64 #s(literal 1 binary64) y (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 y (*.f64 y y)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(fma.f64 (*.f64 y y) (/.f64 #s(literal 1 binary64) (fma.f64 x y y)) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y))))
(fma.f64 (neg.f64 x) y y)
(fma.f64 (neg.f64 y) x y)
(fma.f64 #s(literal -1 binary64) (*.f64 x y) y)
(fma.f64 (/.f64 y (+.f64 x #s(literal 1 binary64))) (/.f64 y y) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y))))
(neg.f64 (/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(neg.f64 (/.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y))) (neg.f64 (fma.f64 x y y))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(neg.f64 (/.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y)))) (fma.f64 x y y)))
(/.f64 y (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) y))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))) (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 x #s(literal 1 binary64)) (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) y)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 x #s(literal 1 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) y)))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))
(/.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (fma.f64 y y (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) y))))
(/.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y))) (fma.f64 x y y))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) (neg.f64 (fma.f64 y y (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) y)))))
(/.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y)))) (neg.f64 (fma.f64 x y y)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y)))))
(/.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))
(/.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x x))) (+.f64 x #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) y) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) y) (+.f64 x #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(/.f64 (-.f64 (*.f64 (*.f64 y y) (fma.f64 x y y)) (*.f64 (fma.f64 x y y) (*.f64 x (*.f64 y (*.f64 x y))))) (*.f64 (fma.f64 x y y) (fma.f64 x y y)))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y)) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 y (*.f64 y y))))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 x (*.f64 x x) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 y y) (*.f64 y y) (*.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x (*.f64 y (*.f64 x y)) (*.f64 y y)))) (fma.f64 x y y)))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 y y)) (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y)))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 y y)) (fma.f64 x y y)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y))))) (neg.f64 (neg.f64 (fma.f64 x y y))))
(/.f64 (neg.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))))) (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x x)))) (+.f64 (neg.f64 x) #s(literal -1 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) y)) (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) y)) (+.f64 (neg.f64 x) #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 x y) (*.f64 (*.f64 x y) (neg.f64 (*.f64 x y))) (*.f64 y (*.f64 y y))) (fma.f64 x (*.f64 y (*.f64 x y)) (-.f64 (*.f64 y y) (*.f64 (neg.f64 (*.f64 x y)) y))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (fma.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (*.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (/.f64 (*.f64 y y) (fma.f64 x y y)) (fma.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)) (*.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y))))))
(/.f64 (-.f64 (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 y y)) (-.f64 (neg.f64 (*.f64 x y)) y))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))) (*.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))) (+.f64 (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (/.f64 (*.f64 y y) (fma.f64 x y y))) (*.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)))) (+.f64 (/.f64 (*.f64 y y) (fma.f64 x y y)) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y))) #s(literal -1 binary64))
(*.f64 y (-.f64 #s(literal 1 binary64) x))
(*.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(*.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 y y (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) y)))))
(*.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y))) (/.f64 #s(literal 1 binary64) (fma.f64 x y y)))
(*.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))))
(*.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x y y))))
(*.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(*.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x x))) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))))
(*.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) y) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(*.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) y) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))))
(*.f64 (/.f64 (fma.f64 x y y) (+.f64 x #s(literal 1 binary64))) (/.f64 (-.f64 y (*.f64 x y)) y))
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(+.f64 x (-.f64 y (*.f64 x y)))
(+.f64 y (-.f64 x (*.f64 x y)))
(+.f64 (+.f64 x y) (neg.f64 (*.f64 x y)))
(+.f64 (-.f64 x (*.f64 x y)) y)
(+.f64 (-.f64 y (*.f64 x y)) x)
(+.f64 (neg.f64 (*.f64 x y)) (+.f64 x y))
(+.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(+.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y)))))
(+.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (neg.f64 (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(-.f64 (+.f64 x y) (*.f64 x y))
(-.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(-.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))))
(-.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (-.f64 y (*.f64 x y)))) (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (-.f64 x (-.f64 y (*.f64 x y)))))
(-.f64 (+.f64 x (/.f64 (*.f64 y (*.f64 y y)) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))))
(-.f64 (+.f64 x (/.f64 (*.f64 y y) (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y y)))
(-.f64 (+.f64 y (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))))
(-.f64 (+.f64 y (/.f64 (*.f64 x x) (fma.f64 x y x))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x y x)))
(-.f64 (+.f64 (+.f64 x y) #s(literal 0 binary64)) (*.f64 x y))
(-.f64 (fma.f64 x (neg.f64 y) (/.f64 (*.f64 x x) (-.f64 x y))) (/.f64 (*.f64 y y) (-.f64 x y)))
(fma.f64 x #s(literal 1 binary64) (-.f64 y (*.f64 x y)))
(fma.f64 x (neg.f64 y) (+.f64 x y))
(fma.f64 x (+.f64 (neg.f64 y) #s(literal 1 binary64)) y)
(fma.f64 x (+.f64 #s(literal 1 binary64) (neg.f64 y)) y)
(fma.f64 x (-.f64 #s(literal 1 binary64) y) y)
(fma.f64 y #s(literal 1 binary64) (-.f64 x (*.f64 x y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(fma.f64 y (neg.f64 x) (+.f64 x y))
(fma.f64 #s(literal 1 binary64) x (-.f64 y (*.f64 x y)))
(fma.f64 #s(literal 1 binary64) y (-.f64 x (*.f64 x y)))
(fma.f64 #s(literal 1 binary64) (+.f64 x y) (neg.f64 (*.f64 x y)))
(fma.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x y)) y)
(fma.f64 #s(literal 1 binary64) (-.f64 y (*.f64 x y)) x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (neg.f64 (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x))) (neg.f64 (*.f64 x y)))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y y (*.f64 x (-.f64 x y)))) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y))) x)
(fma.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 y y (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) y)))) x)
(fma.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (neg.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(fma.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (+.f64 x (fma.f64 x y y))) (neg.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x))) y)
(fma.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (-.f64 x (*.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) x)))) y)
(fma.f64 (neg.f64 x) y (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y))) (/.f64 #s(literal 1 binary64) (fma.f64 x y y)) x)
(fma.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x y x)) y)
(fma.f64 (neg.f64 y) x (+.f64 x y))
(fma.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)) (-.f64 y (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y y) (*.f64 y y)))) x)
(fma.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 (*.f64 x x) y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x y y))) x)
(fma.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)))) (neg.f64 (*.f64 x y)))
(fma.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 x y))) (neg.f64 (*.f64 x y)))
(fma.f64 (*.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)) (neg.f64 (-.f64 x (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 x y) (fma.f64 x y x) (*.f64 x x)))) y)
(fma.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 y (*.f64 x y))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x y x))) y)
(fma.f64 #s(literal -1 binary64) (*.f64 x y) (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)) (neg.f64 (*.f64 x y)))
(fma.f64 (+.f64 (neg.f64 y) #s(literal 1 binary64)) x y)
(fma.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) x)
(fma.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (*.f64 x x))) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) x)
(fma.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) y) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) x)
(fma.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) y) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) x)
(fma.f64 (/.f64 (fma.f64 x y x) (+.f64 y #s(literal 1 binary64))) (/.f64 (-.f64 x (*.f64 x y)) x) y)
(fma.f64 (/.f64 (fma.f64 x y y) (+.f64 x #s(literal 1 binary64))) (/.f64 (-.f64 y (*.f64 x y)) y) x)
(neg.f64 (/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (neg.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (+.f64 x (fma.f64 x y y))) (neg.f64 (+.f64 x (fma.f64 x y y)))))
(neg.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (neg.f64 (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(neg.f64 (/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(neg.f64 (/.f64 (*.f64 (+.f64 x (fma.f64 x y y)) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (+.f64 x (fma.f64 x y y))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y)))) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (-.f64 x (-.f64 y (*.f64 x y))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y)))))
(/.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))
(/.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (+.f64 x (fma.f64 x y y))) (+.f64 x (fma.f64 x y y)))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (neg.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(/.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (neg.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y))))))
(/.f64 (*.f64 (+.f64 x (fma.f64 x y y)) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (neg.f64 (+.f64 x (fma.f64 x y y))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (neg.f64 (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (neg.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))))
(/.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (-.f64 x (-.f64 y (*.f64 x y)))) (-.f64 x (-.f64 y (*.f64 x y))))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))))) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (*.f64 (+.f64 x (fma.f64 x y y)) (*.f64 x (*.f64 y (*.f64 x y))))) (*.f64 (+.f64 x (fma.f64 x y y)) (+.f64 x (fma.f64 x y y))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)) (*.f64 x x))) (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))))) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y))))) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 x (*.f64 y (*.f64 x y))) (fma.f64 x (*.f64 y (*.f64 x y)) (*.f64 (+.f64 x y) (+.f64 x y))))) (+.f64 x (fma.f64 x y y))))
(/.f64 (*.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (+.f64 x (fma.f64 x y y)))) #s(literal 1 binary64)) (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (+.f64 x (fma.f64 x y y))))
(/.f64 (*.f64 (+.f64 (pow.f64 (-.f64 y (*.f64 x y)) #s(literal 9 binary64)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)))) (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))))))) (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))) (neg.f64 (*.f64 x (*.f64 x x))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))) (neg.f64 (*.f64 x (*.f64 x x)))) (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (fma.f64 (*.f64 y (*.f64 y y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))) (neg.f64 (*.f64 x (*.f64 x x))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (*.f64 (*.f64 x x) (fma.f64 x x (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)))))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(/.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)) (*.f64 x x)) (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) #s(literal 1 binary64)) (*.f64 (fma.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)) (*.f64 x x)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)))) (neg.f64 (neg.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(/.f64 (neg.f64 (*.f64 (+.f64 x (fma.f64 x y y)) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)))) (neg.f64 (neg.f64 (+.f64 x (fma.f64 x y y)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (-.f64 x (-.f64 y (*.f64 x y))))) (neg.f64 (-.f64 x (-.f64 y (*.f64 x y)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)))) (neg.f64 (neg.f64 (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))) (neg.f64 (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(/.f64 (fma.f64 y (*.f64 y y) (pow.f64 (-.f64 x (*.f64 x y)) #s(literal 3 binary64))) (fma.f64 y y (-.f64 (*.f64 (-.f64 x (*.f64 x y)) (-.f64 x (*.f64 x y))) (*.f64 y (-.f64 x (*.f64 x y))))))
(/.f64 (fma.f64 (*.f64 x y) (*.f64 (*.f64 x y) (neg.f64 (*.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 x (*.f64 y (*.f64 x y)) (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (neg.f64 (*.f64 x y)) (+.f64 x y)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (fma.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (*.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (fma.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))) (*.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (fma.f64 (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (*.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))))
(/.f64 (-.f64 (*.f64 x (*.f64 y (*.f64 x y))) (*.f64 (+.f64 x y) (+.f64 x y))) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y)))
(/.f64 (-.f64 (*.f64 y y) (*.f64 (-.f64 x (*.f64 x y)) (-.f64 x (*.f64 x y)))) (-.f64 y (-.f64 x (*.f64 x y))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))) (*.f64 (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))) (+.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))) (/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x y)))) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y)))) (*.f64 (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y))))) (+.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (+.f64 x (fma.f64 x y y))) (/.f64 (*.f64 x (*.f64 y (*.f64 x y))) (+.f64 x (fma.f64 x y y)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (*.f64 (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))) (+.f64 (/.f64 (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(*.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))))
(*.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y))))))
(*.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x)) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (neg.f64 (*.f64 x y)) (-.f64 (neg.f64 (*.f64 x y)) (+.f64 x y))))))
(*.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x))))
(*.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (+.f64 x (fma.f64 x y y))) (/.f64 #s(literal 1 binary64) (+.f64 x (fma.f64 x y y))))
(*.f64 (*.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (+.f64 x y) (+.f64 x y) (*.f64 (*.f64 x y) (+.f64 x (fma.f64 x y y)))))))
(*.f64 (*.f64 (+.f64 x (fma.f64 x y y)) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 x (fma.f64 x y y)))))
(*.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (-.f64 y (*.f64 x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (-.f64 x (-.f64 y (*.f64 x y))) (*.f64 y (*.f64 (-.f64 y (*.f64 x y)) (-.f64 #s(literal 1 binary64) x)))))))
(*.f64 (neg.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) (neg.f64 x)))))
(*.f64 (*.f64 (fma.f64 y (-.f64 #s(literal 1 binary64) x) x) (-.f64 x (-.f64 y (*.f64 x y)))) (/.f64 #s(literal 1 binary64) (-.f64 x (-.f64 y (*.f64 x y)))))
(+.f64 #s(literal 1 binary64) (neg.f64 x))
(+.f64 (neg.f64 x) #s(literal 1 binary64))
(+.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (neg.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (neg.f64 (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64)))))
(-.f64 #s(literal 1 binary64) x)
(-.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))))
(fma.f64 x #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (neg.f64 x) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (neg.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (neg.f64 (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64)))))
(fma.f64 (neg.f64 x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1 binary64) x #s(literal 1 binary64))
(neg.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(neg.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) (+.f64 (neg.f64 x) #s(literal -1 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(neg.f64 (/.f64 (+.f64 #s(literal -1 binary64) (*.f64 x x)) (+.f64 x #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) (+.f64 x #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal -1 binary64) (*.f64 x x)) (+.f64 (neg.f64 x) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (*.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))) (*.f64 x (*.f64 x x)))) (*.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (*.f64 (+.f64 x #s(literal 1 binary64)) (*.f64 x x))) (*.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) #s(literal 1 binary64)) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x (*.f64 x x)) (fma.f64 x (*.f64 x x) #s(literal 1 binary64)))) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) (fma.f64 x x #s(literal 1 binary64)))) (+.f64 x #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) (*.f64 x x))) #s(literal 1 binary64)) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 x x)) (+.f64 x #s(literal 1 binary64))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))))) (neg.f64 (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 x x))) (neg.f64 (+.f64 (neg.f64 x) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 x x) (neg.f64 x) #s(literal 1 binary64)) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (fma.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (fma.f64 (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))) (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64)))))))
(/.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))) (*.f64 (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))) (+.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64)))) (*.f64 (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))) (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64))))) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))) (/.f64 (*.f64 x x) (+.f64 x #s(literal 1 binary64)))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) x))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (+.f64 x #s(literal 1 binary64)))))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) (/.f64 #s(literal 1 binary64) (+.f64 x #s(literal 1 binary64))))
(*.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x x (+.f64 x #s(literal 1 binary64))))))
(*.f64 (+.f64 #s(literal -1 binary64) (*.f64 x x)) (/.f64 #s(literal 1 binary64) (+.f64 (neg.f64 x) #s(literal -1 binary64))))

eval59.0ms (1%)

Memory
10.8MiB live, 159.8MiB allocated
Compiler

Compiled 10 891 to 861 computations (92.1% saved)

prune71.0ms (1.3%)

Memory
-29.2MiB live, 159.7MiB allocated
Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New5032505
Fresh000
Picked033
Done000
Total5035508
Accuracy
100.0%
Counts
508 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
75.7%
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
68.4%
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
56.5%
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
25.7%
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
Compiler

Compiled 41 to 21 computations (48.8% saved)

simplify39.0ms (0.7%)

Memory
36.6MiB live, 74.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- 1 x) #s(literal 1 binary64))
cost-diff0
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
cost-diff0
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
cost-diff0
(neg.f64 x)
cost-diff0
(*.f64 y (neg.f64 x))
cost-diff0
#s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))
cost-diff0
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
Rules
608×lower-fma.f32
606×lower-fma.f64
256×lower-*.f32
254×lower-*.f64
168×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01668
02068
14368
26468
39768
414868
527568
643668
757768
866668
968668
1068868
1169168
1269368
069366
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))
(*.f64 y (neg.f64 x))
y
(neg.f64 x)
x
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
y
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
x
Outputs
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 x (neg.f64 y))))
#s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))
#s(approx (- y (* y x)) (*.f64 x (neg.f64 y)))
(*.f64 y (neg.f64 x))
(*.f64 x (neg.f64 y))
y
(neg.f64 x)
x
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
y
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
x

localize74.0ms (1.3%)

Memory
-22.4MiB live, 88.7MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
accuracy100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
accuracy57.6%
#s(approx (- 1 x) #s(literal 1 binary64))
accuracy100.0%
(*.f64 y (neg.f64 x))
accuracy100.0%
(neg.f64 x)
accuracy68.4%
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
accuracy44.9%
#s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))
Samples
57.0ms256×0valid
Compiler

Compiled 42 to 15 computations (64.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 6.0ms (44.4% of total)
ival-sub: 3.0ms (22.2% of total)
ival-add: 3.0ms (22.2% of total)
ival-neg: 1.0ms (7.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0%)

Memory
7.5MiB live, 7.5MiB allocated
Counts
7 → 144
Calls
Call 1
Inputs
#<alt #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))>
#<alt #s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))>
#<alt (*.f64 y (neg.f64 x))>
#<alt (neg.f64 x)>
#<alt #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))>
#<alt (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)>
#<alt #s(approx (- 1 x) #s(literal 1 binary64))>
Outputs
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (- 1 x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt y>
#<alt (+ y (* -1 (* x y)))>
#<alt (+ y (* -1 (* x y)))>
#<alt (+ y (* -1 (* x y)))>
#<alt (* -1 (* x y))>
#<alt (* x (- (/ y x) y))>
#<alt (* x (- (/ y x) y))>
#<alt (* x (- (/ y x) y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (* -1 y))))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 (* x y))>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt (* -1 x)>
#<alt y>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (+ y (* x (- 1 y)))>
#<alt (* x (- 1 y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (- (+ 1 (/ y x)) y))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (+ 1 (* -1 x)))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))>
#<alt x>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (+ x (* y (- 1 x)))>
#<alt (* y (- 1 x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- (+ 1 (/ x y)) x))>
#<alt (* y (- 1 x))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))>
#<alt y>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (+ y (* x (+ 1 (* -1 y))))>
#<alt (* x (+ 1 (* -1 y)))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* x (+ 1 (+ (* -1 y) (/ y x))))>
#<alt (* -1 (* x (- y 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1)))>
#<alt 1>
#<alt (+ 1 (* -1 x))>
#<alt (+ 1 (* -1 x))>
#<alt (+ 1 (* -1 x))>
#<alt (* -1 x)>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* x (- (/ 1 x) 1))>
#<alt (* -1 x)>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
#<alt (* -1 (* x (- 1 (/ 1 x))))>
Calls

36 calls:

TimeVariablePointExpression
0.0ms
y
@0
(* y (neg x))
0.0ms
x
@0
(* y (neg x))
0.0ms
x
@inf
(* y (neg x))
0.0ms
y
@inf
(* y (neg x))
0.0ms
y
@-inf
(* y (neg x))

simplify239.0ms (4.2%)

Memory
22.5MiB live, 377.1MiB allocated
Algorithm
egg-herbie
Rules
4 118×lower-*.f64
4 118×lower-*.f32
3 496×lower-fma.f64
3 496×lower-fma.f32
2 084×div-sub
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061710
1185710
2435710
31279710
42739710
53783710
64395710
75092710
85615710
96141710
107146710
08120656
Stop Event
iter limit
node limit
Counts
144 → 137
Calls
Call 1
Inputs
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
y
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(* -1 (* x y))
(* x (- (/ y x) y))
(* x (- (/ y x) y))
(* x (- (/ y x) y))
(* -1 (* x y))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 (* x y))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
y
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* -1 (* x (- y 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
y
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(+ y (* -1 (* x y)))
(-.f64 y (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* x (- (/ y x) y))
(-.f64 y (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (* -1 y))))
(-.f64 y (*.f64 y x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 (* x y))
(*.f64 y (neg.f64 x))
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
y
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (- 1 y)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- 1 y))
(-.f64 x (*.f64 y x))
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (+ 1 (* -1 x)))
(-.f64 y (*.f64 y x))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
x
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ x (* y (- 1 x)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* y (- 1 x))
(-.f64 y (*.f64 y x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
y
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (* -1 y)))
(-.f64 x (*.f64 y x))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- y 1)))
(-.f64 x (*.f64 y x))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 y (-.f64 #s(literal 1 binary64) x) x)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite496.0ms (8.8%)

Memory
-2.9MiB live, 446.1MiB allocated
Algorithm
batch-egg-rewrite
Rules
9 264×lower-fma.f32
9 262×lower-fma.f64
5 684×lower-*.f32
5 682×lower-*.f64
4 020×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01663
02063
110263
269563
0850461
Stop Event
iter limit
node limit
iter limit
Counts
7 → 102
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))
(*.f64 y (neg.f64 x))
(neg.f64 x)
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
#s(approx (- 1 x) #s(literal 1 binary64))
Outputs
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 x (neg.f64 y))))
#s(approx (- y (* y x)) (*.f64 x (neg.f64 y)))
(+.f64 #s(literal 0 binary64) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 #s(literal 0 binary64) y) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 y #s(literal 0 binary64)) (*.f64 x (neg.f64 y)))
(-.f64 #s(literal 0 binary64) (*.f64 x y))
(fma.f64 y #s(literal 0 binary64) (*.f64 x (neg.f64 y)))
(fma.f64 #s(literal 0 binary64) y (*.f64 x (neg.f64 y)))
(neg.f64 (*.f64 x y))
(/.f64 (*.f64 (*.f64 x y) (*.f64 x (*.f64 y (*.f64 x (neg.f64 y))))) (+.f64 #s(literal 0 binary64) (fma.f64 x (*.f64 x (*.f64 y y)) (*.f64 #s(literal 0 binary64) (*.f64 x y)))))
(/.f64 (*.f64 x (*.f64 y (*.f64 x (neg.f64 y)))) (+.f64 #s(literal 0 binary64) (*.f64 x y)))
(/.f64 (*.f64 y (neg.f64 (*.f64 x (*.f64 x x)))) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (*.f64 y (neg.f64 (*.f64 x x))) x)
(/.f64 (*.f64 (neg.f64 (*.f64 x (*.f64 x x))) y) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (*.f64 (neg.f64 (*.f64 x x)) y) x)
(*.f64 x (neg.f64 y))
(*.f64 x (*.f64 #s(literal 1 binary64) (neg.f64 y)))
(*.f64 y (neg.f64 x))
(*.f64 (*.f64 x y) #s(literal -1 binary64))
(*.f64 (neg.f64 x) y)
(*.f64 (*.f64 x (neg.f64 y)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 x (neg.f64 y)))
(*.f64 #s(literal -1 binary64) (*.f64 x y))
(*.f64 (neg.f64 y) x)
(*.f64 (*.f64 y #s(literal -1 binary64)) x)
(*.f64 (*.f64 (neg.f64 y) #s(literal 1 binary64)) x)
(*.f64 (*.f64 (*.f64 y #s(literal -1 binary64)) #s(literal 1 binary64)) x)
(+.f64 #s(literal 0 binary64) (neg.f64 x))
(-.f64 #s(literal 0 binary64) x)
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 x x #s(literal 0 binary64))) (/.f64 (*.f64 x (*.f64 x x)) (fma.f64 x x #s(literal 0 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) x) (/.f64 (*.f64 x x) x))
(neg.f64 x)
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x #s(literal 0 binary64)) (neg.f64 (*.f64 x (*.f64 x x)))))
(/.f64 #s(literal 1 binary64) (/.f64 x (neg.f64 (*.f64 x x))))
(/.f64 (*.f64 x x) (neg.f64 x))
(/.f64 (neg.f64 (*.f64 x (*.f64 x x))) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (neg.f64 (*.f64 x (*.f64 x x))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 x x) (*.f64 #s(literal 0 binary64) (neg.f64 x)))))
(/.f64 (neg.f64 (*.f64 x x)) x)
(/.f64 (neg.f64 (*.f64 x x)) (-.f64 #s(literal 0 binary64) (neg.f64 x)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x (*.f64 x x)))) (fma.f64 x x #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x x))) x)
(/.f64 (neg.f64 (neg.f64 (*.f64 x (*.f64 x x)))) (neg.f64 (fma.f64 x x #s(literal 0 binary64))))
(*.f64 x #s(literal -1 binary64))
(*.f64 (neg.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (neg.f64 x))
(*.f64 #s(literal -1 binary64) x)
(*.f64 (neg.f64 (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (fma.f64 x x #s(literal 0 binary64))))
(*.f64 (neg.f64 (*.f64 x x)) (/.f64 #s(literal 1 binary64) x))
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
(+.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))
(+.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) x)
(+.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (neg.f64 (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(-.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))) (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))))
(fma.f64 x #s(literal 1 binary64) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))
(fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)
(fma.f64 #s(literal 1 binary64) x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
(fma.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (neg.f64 (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(neg.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (neg.f64 (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))))
(neg.f64 (/.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (neg.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))
(/.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))))
(/.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (neg.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(/.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)) (*.f64 x x))) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (*.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))) (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))))) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x))) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x)))) #s(literal 1 binary64)) (*.f64 (fma.f64 y (*.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))) (*.f64 (*.f64 x x) (fma.f64 x x (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(/.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 x x)) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) #s(literal 1 binary64)) (*.f64 (fma.f64 y (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 x x)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)))) (neg.f64 (neg.f64 (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))) (neg.f64 (neg.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))))) (neg.f64 (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (fma.f64 (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (*.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (*.f64 (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))) (+.f64 (/.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 (*.f64 x x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(literal 1 binary64)) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) #s(literal 1 binary64)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))) (fma.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (*.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))) (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64)))))))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x))))
(/.f64 (*.f64 (*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (-.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) #s(approx (- 1 x) #s(literal 1 binary64))))) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y (*.f64 (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))) (*.f64 (*.f64 x x) (fma.f64 x x (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))))
(/.f64 (*.f64 (*.f64 (fma.f64 y (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 x x)) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 x x)))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y))))))
(*.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))))
(*.f64 (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))) (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))))
(*.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))) (/.f64 #s(literal 1 binary64) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x))))
(*.f64 (neg.f64 (*.f64 (fma.f64 x x (*.f64 (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64)))) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) (*.f64 y y)))))))
(*.f64 (neg.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) (neg.f64 x)))))
(*.f64 (*.f64 (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 y #s(approx (- 1 x) #s(literal 1 binary64))))))
#s(approx (- 1 x) #s(literal 1 binary64))

eval101.0ms (1.8%)

Memory
-22.2MiB live, 60.5MiB allocated
Compiler

Compiled 3 469 to 264 computations (92.4% saved)

prune16.0ms (0.3%)

Memory
-3.3MiB live, 34.2MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New2390239
Fresh000
Picked022
Done033
Total2395244
Accuracy
100.0%
Counts
244 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
75.7%
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
68.4%
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
56.5%
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
25.7%
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
Compiler

Compiled 81 to 35 computations (56.8% saved)

regimes8.0ms (0.1%)

Memory
15.4MiB live, 15.4MiB allocated
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(-.f64 (+.f64 x y) (*.f64 x y))
Outputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
Calls

3 calls:

3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
3.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 15 to 9 computations (40% saved)

regimes7.0ms (0.1%)

Memory
13.6MiB live, 13.6MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
Outputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x)))
Calls

3 calls:

2.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
99.6%3x
99.5%3y
98.9%2(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 15 to 9 computations (40% saved)

regimes22.0ms (0.4%)

Memory
-27.1MiB live, 12.5MiB allocated
Counts
3 → 3
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
#s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
Outputs
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
#s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))
Calls

3 calls:

18.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
2.0ms
x
2.0ms
y
Results
AccuracySegmentsBranch
79.7%2y
98.6%3x
92.9%3(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 15 to 9 computations (40% saved)

regimes3.0ms (0.1%)

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

2 calls:

1.0ms
x
1.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
88.7%3(-.f64 (+.f64 x y) (*.f64 x y))
83.3%3x
Compiler

Compiled 12 to 7 computations (41.7% saved)

regimes4.0ms (0.1%)

Memory
9.4MiB live, 9.4MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
Outputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
Calls

3 calls:

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

Compiled 15 to 9 computations (40% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-1.0416703986595457e-249
5.715924118716731e-252
Compiler

Compiled 12 to 10 computations (16.7% saved)

bsearch63.0ms (1.1%)

Memory
-2.6MiB live, 37.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
8.150130198630706e-6
990183.6497034037
50.0ms
-38021858.57049342
-58.5447390916636
Samples
11.0ms304×0valid
Compiler

Compiled 354 to 200 computations (43.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 2.0ms (38.1% of total)
ival-mult: 2.0ms (38.1% of total)
ival-sub: 1.0ms (19% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.068467874081649e+297
1.262740020044607e+299
0.0ms
-1.5669354964633493e+297
-2.263902921112908e+295
Compiler

Compiled 12 to 10 computations (16.7% saved)

simplify8.0ms (0.1%)

Memory
14.9MiB live, 14.9MiB allocated
Algorithm
egg-herbie
Rules
16×+-commutative_binary64
14×sub-neg_binary64
10×*-commutative_binary64
cancel-sign-sub-inv_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041188
163188
275188
380188
482188
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -8061134813471455/8061134813471454564702450331367746071149403778627342561766978592325956765086744071570087522699847227396765060321916636335485039665263146015175460486800225477728068298324662539195732386420081192825687147647265448061340763744378078290380812053940375922997109693874176 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x))) #s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x))))
(if (<=.f64 x #s(literal -59 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x))) (if (<=.f64 x #s(literal 1 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696 binary64)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))) (if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal 4999999999999999797831017376714894119127812233696870733560457558998243835015834942700401512775872587353423939115559831572611431741498074611166071691150501229607379410134558461510763529142729843207341692956811227775656913210014077504201792814563184923802875085144633272926482892941009176900625498112 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))))
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))
Outputs
#s(approx (- (+ x y) (* x y)) (fma.f64 y (-.f64 #s(literal 1 binary64) x) x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -8061134813471455/8061134813471454564702450331367746071149403778627342561766978592325956765086744071570087522699847227396765060321916636335485039665263146015175460486800225477728068298324662539195732386420081192825687147647265448061340763744378078290380812053940375922997109693874176 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x))) #s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 y x))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -8061134813471455/8061134813471454564702450331367746071149403778627342561766978592325956765086744071570087522699847227396765060321916636335485039665263146015175460486800225477728068298324662539195732386420081192825687147647265448061340763744378078290380812053940375922997109693874176 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 x y))) #s(approx (- (+ x y) (* x y)) (-.f64 y (*.f64 x y))))
(if (<=.f64 x #s(literal -59 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x))) (if (<=.f64 x #s(literal 1 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 y x)))))
(if (<=.f64 x #s(literal -59 binary64)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 x y))) (if (<=.f64 x #s(literal 1 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (-.f64 x (*.f64 x y)))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696 binary64)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x)))) (if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal 4999999999999999797831017376714894119127812233696870733560457558998243835015834942700401512775872587353423939115559831572611431741498074611166071691150501229607379410134558461510763529142729843207341692956811227775656913210014077504201792814563184923802875085144633272926482892941009176900625498112 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 y (neg.f64 x))))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696 binary64)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 x (neg.f64 y)))) (if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal 4999999999999999797831017376714894119127812233696870733560457558998243835015834942700401512775872587353423939115559831572611431741498074611166071691150501229607379410134558461510763529142729843207341692956811227775656913210014077504201792814563184923802875085144633272926482892941009176900625498112 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) #s(approx (- y (* y x)) (*.f64 x (neg.f64 y))))))
#s(approx (- (+ x y) (* x y)) (fma.f64 y #s(approx (- 1 x) #s(literal 1 binary64)) x))

soundness1.5s (27%)

Memory
-15.8MiB live, 345.3MiB allocated
Rules
19 840×lower-fma.f64
19 840×lower-fma.f32
4 142×lower-*.f64
4 142×lower-*.f32
4 022×associate-*r/
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067924
1203924
2462924
31409924
42758924
53747924
64337924
75031924
85554924
96080924
107109924
08083852
042280
1125280
2282280
3848280
42183280
53268280
64153280
74757280
85102280
95329280
105424280
115464280
125484280
135484280
145502280
155502280
09585262
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 184 to 77 computations (58.2% saved)

preprocess190.0ms (3.4%)

Memory
-7.9MiB live, 147.8MiB allocated
Compiler

Compiled 238 to 74 computations (68.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...