Optimisation.CirclePacking:place from circle-packing-0.1.0.4, G

Time bar (total: 4.8s)

analyze0.0ms (0%)

Memory
0.5MiB live, 0.5MiB 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 9 computations (0% saved)

sample863.0ms (18%)

Memory
-11.6MiB live, 897.2MiB allocated
Samples
629.0ms8 254×0valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 345.0ms
ival-mult: 245.0ms (71% of total)
ival-add: 86.0ms (24.9% of total)
ival-true: 6.0ms (1.7% of total)
exact: 5.0ms (1.4% of total)
ival-assert: 3.0ms (0.9% of total)
adjust: 0.0ms (0% of total)
Bogosity

preprocess170.0ms (3.5%)

Memory
-3.2MiB live, 40.0MiB allocated
Algorithm
egg-herbie
Rules
1 636×unsub-neg
662×distribute-lft-in
648×sub-neg
638×distribute-rgt-in
418×distribute-neg-out
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02668
110864
240963
3124863
4295363
5441363
6529363
7541363
8542363
9542863
10550363
11553963
12553963
13559863
14559863
077
0107
1217
2497
3967
41827
52247
62247
02247
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Outputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Symmetry

(sort x y)

explain65.0ms (1.4%)

Memory
28.2MiB live, 102.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
00-0-(+.f64 z #s(literal 1 binary64))
00-0-y
00-0-#s(literal 1 binary64)
00-0-(+.f64 x y)
00-0-z
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
34.0ms512×0valid
Compiler

Compiled 58 to 32 computations (44.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-add: 5.0ms (54.1% of total)
ival-mult: 3.0ms (32.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Compiler

Compiled 10 to 7 computations (30% saved)

simplify12.0ms (0.3%)

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

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 z #s(literal 1 binary64))
cost-diff0
(+.f64 x y)
cost-diff0
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Rules
296×lower-fma.f64
296×lower-fma.f32
104×lower-+.f32
100×lower-+.f64
92×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
01017
12117
24917
39617
418217
522417
622417
022417
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(+.f64 x y)
x
y
(+.f64 z #s(literal 1 binary64))
z
#s(literal 1 binary64)
Outputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(+.f64 x y)
x
y
(+.f64 z #s(literal 1 binary64))
z
#s(literal 1 binary64)

localize32.0ms (0.7%)

Memory
-20.4MiB live, 58.7MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(+.f64 z #s(literal 1 binary64))
accuracy100.0%
(+.f64 x y)
accuracy100.0%
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Samples
23.0ms256×0valid
Compiler

Compiled 19 to 9 computations (52.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-add: 10.0ms (79.9% of total)
ival-mult: 2.0ms (16% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.1%)

Memory
7.2MiB live, 7.2MiB allocated
Counts
3 → 72
Calls
Call 1
Inputs
#<alt (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))>
#<alt (+.f64 x y)>
#<alt (+.f64 z #s(literal 1 binary64))>
Outputs
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<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 1>
#<alt (+ 1 z)>
#<alt (+ 1 z)>
#<alt (+ 1 z)>
#<alt z>
#<alt (* z (+ 1 (/ 1 z)))>
#<alt (* z (+ 1 (/ 1 z)))>
#<alt (* z (+ 1 (/ 1 z)))>
#<alt z>
#<alt (* z (+ 1 (/ 1 z)))>
#<alt (* z (+ 1 (/ 1 z)))>
#<alt (* z (+ 1 (/ 1 z)))>
Calls

18 calls:

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

simplify293.0ms (6.1%)

Memory
12.9MiB live, 415.1MiB allocated
Algorithm
egg-herbie
Rules
11 054×lower-fma.f64
11 054×lower-fma.f32
2 652×lower-*.f64
2 652×lower-*.f32
2 002×lower--.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059322
1219322
2730322
32461322
44974322
57661322
08239316
Stop Event
iter limit
node limit
Counts
72 → 64
Calls
Call 1
Inputs
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
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)))
1
(+ 1 z)
(+ 1 z)
(+ 1 z)
z
(* z (+ 1 (/ 1 z)))
(* z (+ 1 (/ 1 z)))
(* z (+ 1 (/ 1 z)))
z
(* z (+ 1 (/ 1 z)))
(* z (+ 1 (/ 1 z)))
(* z (+ 1 (/ 1 z)))
Outputs
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y 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)
1
#s(literal 1 binary64)
(+ 1 z)
(+.f64 #s(literal 1 binary64) z)
(+ 1 z)
(+.f64 #s(literal 1 binary64) z)
(+ 1 z)
(+.f64 #s(literal 1 binary64) z)
z
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)
z
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)
(* z (+ 1 (/ 1 z)))
(+.f64 #s(literal 1 binary64) z)

rewrite298.0ms (6.2%)

Memory
-11.4MiB live, 606.1MiB allocated
Algorithm
batch-egg-rewrite
Rules
4 398×lower-*.f32
4 396×lower-*.f64
3 796×lower-fma.f64
3 796×lower-fma.f32
3 164×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
01013
14613
236713
3557013
0864613
Stop Event
iter limit
node limit
iter limit
Counts
3 → 415
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(+.f64 x y)
(+.f64 z #s(literal 1 binary64))
Outputs
(+.f64 x (+.f64 y (*.f64 (+.f64 x y) z)))
(+.f64 y (+.f64 x (*.f64 (+.f64 x y) z)))
(+.f64 (+.f64 x y) (*.f64 (+.f64 x y) z))
(+.f64 (*.f64 (+.f64 x y) z) (+.f64 x y))
(+.f64 (fma.f64 x z x) (fma.f64 y z y))
(+.f64 (fma.f64 y z y) (fma.f64 x z x))
(+.f64 (*.f64 x z) (fma.f64 y z (+.f64 x y)))
(+.f64 (*.f64 y z) (fma.f64 x z (+.f64 x y)))
(+.f64 (+.f64 (+.f64 x y) (*.f64 x z)) (*.f64 y z))
(+.f64 (+.f64 (+.f64 x y) (*.f64 y z)) (*.f64 x z))
(+.f64 (fma.f64 (+.f64 x y) z x) y)
(+.f64 (fma.f64 (+.f64 x y) z y) x)
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (-.f64 (*.f64 y (/.f64 y (-.f64 x y))) (*.f64 (+.f64 x y) z)))
(-.f64 (/.f64 (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))) (/.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))))
(-.f64 (fma.f64 (+.f64 x y) z (/.f64 (*.f64 x x) (-.f64 x y))) (*.f64 y (/.f64 y (-.f64 x y))))
(fma.f64 x z (fma.f64 y z (+.f64 x y)))
(fma.f64 x #s(literal 1 binary64) (+.f64 y (*.f64 (+.f64 x y) z)))
(fma.f64 x (+.f64 z #s(literal 1 binary64)) (fma.f64 y z y))
(fma.f64 y z (fma.f64 x z (+.f64 x y)))
(fma.f64 y #s(literal 1 binary64) (+.f64 x (*.f64 (+.f64 x y) z)))
(fma.f64 y (+.f64 z #s(literal 1 binary64)) (fma.f64 x z x))
(fma.f64 (+.f64 x y) z (+.f64 x y))
(fma.f64 (+.f64 x y) #s(literal 1 binary64) (*.f64 (+.f64 x y) z))
(fma.f64 (+.f64 x y) (*.f64 (-.f64 x y) (/.f64 #s(literal 1 binary64) (-.f64 x y))) (*.f64 (+.f64 x y) z))
(fma.f64 (+.f64 x y) (/.f64 (-.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) z))
(fma.f64 z x (fma.f64 y z (+.f64 x y)))
(fma.f64 z y (fma.f64 x z (+.f64 x y)))
(fma.f64 z (+.f64 x y) (+.f64 x y))
(fma.f64 #s(literal 1 binary64) x (+.f64 y (*.f64 (+.f64 x y) z)))
(fma.f64 #s(literal 1 binary64) y (+.f64 x (*.f64 (+.f64 x y) z)))
(fma.f64 #s(literal 1 binary64) (+.f64 x y) (*.f64 (+.f64 x y) z))
(fma.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) z) (+.f64 x y))
(fma.f64 #s(literal 1 binary64) (*.f64 x z) (fma.f64 y z (+.f64 x y)))
(fma.f64 #s(literal 1 binary64) (*.f64 y z) (fma.f64 x z (+.f64 x y)))
(fma.f64 (+.f64 z #s(literal 1 binary64)) x (fma.f64 y z y))
(fma.f64 (+.f64 z #s(literal 1 binary64)) y (fma.f64 x z x))
(fma.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) x) (fma.f64 y z y))
(fma.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) y) (fma.f64 x z x))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (+.f64 x y) z))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) #s(literal 1 binary64)) (*.f64 (+.f64 x y) z))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) z) (+.f64 x y))
(fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 z (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 x y))
(fma.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (+.f64 x y) z))
(fma.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (/.f64 (+.f64 x y) (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (+.f64 x y) z))
(fma.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) x) (fma.f64 y z y))
(fma.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) y) (fma.f64 x z x))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (*.f64 (+.f64 x y) z))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) #s(literal 1 binary64)) (*.f64 (+.f64 x y) z))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) z) (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 z (-.f64 x y)) (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) z) #s(literal 1 binary64) (+.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 x (*.f64 y (-.f64 y x))))) (*.f64 (+.f64 x y) z))
(fma.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 x y))) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) #s(literal -1 binary64)) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal -1 binary64)) (*.f64 (+.f64 x y) z))
(fma.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)) (*.f64 (+.f64 x y) z))
(fma.f64 (*.f64 x z) #s(literal 1 binary64) (fma.f64 y z (+.f64 x y)))
(fma.f64 (*.f64 y z) #s(literal 1 binary64) (fma.f64 x z (+.f64 x y)))
(fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 x y))
(fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (+.f64 x y))
(fma.f64 (*.f64 x (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (fma.f64 y z y))
(fma.f64 (*.f64 y (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (fma.f64 x z x))
(fma.f64 (*.f64 x (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (fma.f64 y z y))
(fma.f64 (*.f64 y (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (fma.f64 x z x))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 (*.f64 y (-.f64 y x)) (*.f64 (*.f64 y (-.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 x (*.f64 x (*.f64 x x)))) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (fma.f64 y (+.f64 x y) (*.f64 x x)) (*.f64 (+.f64 x y) z))
(fma.f64 (/.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 y (-.f64 y x)) (*.f64 (*.f64 y (-.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 x (*.f64 x (*.f64 x x)))) (+.f64 x y))
(fma.f64 (/.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))) (+.f64 x y))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y) (+.f64 x y))
(fma.f64 (/.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (fma.f64 y (+.f64 x y) (*.f64 x x)) (+.f64 x y))
(fma.f64 (pow.f64 (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (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 #s(literal 1 binary64) (fma.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))) (*.f64 (+.f64 x y) z))
(fma.f64 (pow.f64 (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (*.f64 (+.f64 x y) z))
(fma.f64 (pow.f64 (/.f64 (-.f64 x y) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y))))) (*.f64 (+.f64 x y) z))
(fma.f64 (pow.f64 (/.f64 (-.f64 x y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))) (*.f64 (+.f64 x y) z))
(/.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y)) (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y)) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 z z #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 x y) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))) (*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x y) (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64)))))
(/.f64 (+.f64 z #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 x y)))
(/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 z #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (-.f64 x y) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (-.f64 x y)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 z z #s(literal -1 binary64))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y)))
(/.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y)))
(/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (fma.f64 (+.f64 x y) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y)))))
(/.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (fma.f64 (+.f64 x y) (+.f64 x y) (-.f64 (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y))) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (-.f64 x y))
(/.f64 (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(/.f64 (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64))) (+.f64 z #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (+.f64 (-.f64 x y) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (-.f64 x y)))
(/.f64 (fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 x y) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (-.f64 x y) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (-.f64 x y) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (-.f64 x y) (*.f64 (-.f64 x y) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (-.f64 x y) (-.f64 x y)))
(/.f64 (fma.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (-.f64 x y) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (neg.f64 (-.f64 x y)) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (neg.f64 (-.f64 x y)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (-.f64 x y) (*.f64 (neg.f64 (-.f64 x y)) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (neg.f64 (-.f64 x y)) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (-.f64 y x) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (-.f64 y x) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (-.f64 x y) (*.f64 (-.f64 y x) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)))) (*.f64 (-.f64 y x) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (+.f64 x y)) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) #s(literal 1 binary64))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (-.f64 x y) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (-.f64 x y)) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (neg.f64 (-.f64 x y))))
(/.f64 (fma.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (-.f64 y x) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 y x)))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (/.f64 #s(literal 1 binary64) (+.f64 x y)) (*.f64 (-.f64 x y) #s(literal 1 binary64))) (*.f64 (-.f64 x y) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (-.f64 x y) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (-.f64 x y) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (-.f64 x y) (*.f64 (-.f64 x y) (*.f64 (+.f64 x y) (-.f64 x y)))) (*.f64 (-.f64 x y) (-.f64 x y)))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (-.f64 x y) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))))) (*.f64 (-.f64 x y) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (neg.f64 (-.f64 x y)) (*.f64 (-.f64 x y) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))))) (*.f64 (-.f64 x y) (neg.f64 (-.f64 x y))))
(/.f64 (fma.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (-.f64 y x) (*.f64 (-.f64 x y) (*.f64 (+.f64 x y) (-.f64 y x)))) (*.f64 (-.f64 x y) (-.f64 y x)))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 z z #s(literal -1 binary64))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (-.f64 x y) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (-.f64 x y) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (-.f64 x y) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) #s(literal 1 binary64)) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 z z #s(literal -1 binary64))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (neg.f64 (-.f64 x y)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (neg.f64 (-.f64 x y)) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (fma.f64 z z #s(literal -1 binary64))) (*.f64 (neg.f64 (-.f64 x y)) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (neg.f64 (-.f64 x y)) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (neg.f64 (-.f64 x y)) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (neg.f64 (-.f64 x y)) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) #s(literal 1 binary64)) (*.f64 (-.f64 y x) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (-.f64 y x) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (fma.f64 z z #s(literal -1 binary64))) (*.f64 (-.f64 y x) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (*.f64 (-.f64 y x) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (*.f64 (-.f64 y x) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (*.f64 (-.f64 y x) (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (-.f64 y x)))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 y x)))
(/.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (+.f64 z #s(literal -1 binary64)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (+.f64 z #s(literal -1 binary64)) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) #s(literal 1 binary64)) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) z) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (-.f64 #s(literal 1 binary64) z) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (-.f64 #s(literal 1 binary64) z) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (-.f64 #s(literal 1 binary64) z) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 y x)))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) #s(literal 1 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) z) (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (-.f64 #s(literal 1 binary64) z) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 x y)))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (*.f64 (-.f64 #s(literal 1 binary64) z) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (*.f64 (-.f64 #s(literal 1 binary64) z) (neg.f64 (-.f64 x y))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (*.f64 (+.f64 x y) (-.f64 y x))) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 y x)))
(/.f64 (neg.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 z z #s(literal -1 binary64)))) (neg.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))))) (neg.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y))))
(/.f64 (neg.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))) (neg.f64 (fma.f64 (+.f64 x y) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))))) (neg.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (neg.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))) (neg.f64 (-.f64 x y)))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64)))) (-.f64 #s(literal 1 binary64) z))
(/.f64 (fma.f64 (*.f64 (fma.f64 x z x) (fma.f64 x z x)) (fma.f64 x z x) (*.f64 (*.f64 (fma.f64 y z y) (fma.f64 y z y)) (fma.f64 y z y))) (fma.f64 (fma.f64 x z x) (fma.f64 x z x) (-.f64 (*.f64 (fma.f64 y z y) (fma.f64 y z y)) (*.f64 (fma.f64 x z x) (fma.f64 y z y)))))
(/.f64 (fma.f64 (*.f64 (fma.f64 y z y) (fma.f64 y z y)) (fma.f64 y z y) (*.f64 (*.f64 (fma.f64 x z x) (fma.f64 x z x)) (fma.f64 x z x))) (fma.f64 (fma.f64 y z y) (fma.f64 y z y) (-.f64 (*.f64 (fma.f64 x z x) (fma.f64 x z x)) (*.f64 (fma.f64 y z y) (fma.f64 x z x)))))
(/.f64 (-.f64 (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y)))) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))
(/.f64 (-.f64 (*.f64 (fma.f64 x z x) (fma.f64 x z x)) (*.f64 (fma.f64 y z y) (fma.f64 y z y))) (-.f64 (fma.f64 x z x) (fma.f64 y z y)))
(/.f64 (-.f64 (*.f64 (fma.f64 y z y) (fma.f64 y z y)) (*.f64 (fma.f64 x z x) (fma.f64 x z x))) (-.f64 (fma.f64 y z y) (fma.f64 x z x)))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (-.f64 #s(literal 1 binary64) z))
(/.f64 (*.f64 (+.f64 x y) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (-.f64 #s(literal 1 binary64) z))
(/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 y x))
(/.f64 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (+.f64 z #s(literal 1 binary64))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (+.f64 z #s(literal 1 binary64))) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (+.f64 z #s(literal 1 binary64))) (-.f64 y x))
(/.f64 (*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (+.f64 x y)) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (+.f64 x y)) (-.f64 #s(literal 1 binary64) z))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (+.f64 x y)) (-.f64 #s(literal 1 binary64) z))
(pow.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 x y))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y)) (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y)) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 z z #s(literal -1 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (+.f64 x y) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y)))) (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))) (*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 x y) (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64)))) #s(literal -1 binary64))
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))))
(*.f64 (+.f64 z #s(literal 1 binary64)) (+.f64 x y))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (+.f64 x y)))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x))))))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y))))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (/.f64 (+.f64 x y) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z #s(literal 1 binary64))))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x))))))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64)))))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (+.f64 x y)))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64)))))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (/.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y))))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (/.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (+.f64 z #s(literal 1 binary64))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 (+.f64 z #s(literal 1 binary64)) (-.f64 x y)))
(*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z #s(literal -1 binary64)))))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 x x (*.f64 y (-.f64 y x))))))
(*.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 x y))))
(*.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 z #s(literal -1 binary64)) (-.f64 x y))))
(*.f64 (fma.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) (+.f64 x y))))) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 x y) (-.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)) (*.f64 (*.f64 z z) (*.f64 (+.f64 x y) (+.f64 x y))))))
(*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64))) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (+.f64 z #s(literal -1 binary64)))))
(*.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(*.f64 (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(*.f64 (/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 (*.f64 y (-.f64 y x)) (*.f64 (*.f64 y (-.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 x (*.f64 x (*.f64 x x)))))
(*.f64 (/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))) (-.f64 (*.f64 x x) (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y))
(*.f64 (/.f64 (*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 x y) (-.f64 x y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (fma.f64 y (+.f64 x y) (*.f64 x x)))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))))) (fma.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 z z)) (*.f64 z (*.f64 z (*.f64 z z)))))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (+.f64 (fma.f64 z z #s(literal -1 binary64)) z))) (+.f64 (fma.f64 z z #s(literal -1 binary64)) z))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64))) (fma.f64 z z #s(literal -1 binary64))) (+.f64 z #s(literal 1 binary64)))
(*.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z #s(literal -1 binary64))) (fma.f64 z (*.f64 z z) #s(literal -1 binary64))) (+.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(+.f64 x y)
(+.f64 y x)
(+.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (neg.f64 (*.f64 y (/.f64 y (-.f64 x y)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y))) #s(literal -1 binary64)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (*.f64 y (/.f64 y (-.f64 x y))))
(-.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x)))
(fma.f64 x #s(literal 1 binary64) y)
(fma.f64 x (/.f64 x (-.f64 x y)) (neg.f64 (*.f64 y (/.f64 y (-.f64 x y)))))
(fma.f64 y #s(literal 1 binary64) x)
(fma.f64 #s(literal 1 binary64) x y)
(fma.f64 #s(literal 1 binary64) y x)
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (-.f64 x y)) (neg.f64 (*.f64 y (/.f64 y (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x x) (*.f64 (+.f64 x y) (-.f64 x y))) (+.f64 x y) (neg.f64 (*.f64 y (/.f64 y (-.f64 x y)))))
(fma.f64 (/.f64 (*.f64 x x) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (fma.f64 y (+.f64 x y) (*.f64 x x)) (neg.f64 (*.f64 y (/.f64 y (-.f64 x y)))))
(neg.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(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 x (*.f64 y (-.f64 y x)))))
(neg.f64 (/.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (-.f64 x y)))
(/.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 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.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 x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (-.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 x (*.f64 y (-.f64 y x))) (fma.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.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 (+.f64 x y) (-.f64 y x)) (-.f64 y x))
(/.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 (*.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 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) #s(literal 1 binary64)) (*.f64 (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.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 (*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) #s(literal 1 binary64)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) #s(literal 1 binary64)) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) #s(literal 1 binary64)) (-.f64 y x))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 y x))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (neg.f64 (-.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 x (*.f64 x x)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 (-.f64 x y) (-.f64 x y)) (-.f64 x y))) (/.f64 (*.f64 (*.f64 y (*.f64 y y)) (*.f64 y (*.f64 y y))) (*.f64 (*.f64 (-.f64 x y) (-.f64 x y)) (-.f64 x y)))) (fma.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y)) (fma.f64 (*.f64 y (/.f64 y (-.f64 x y))) (*.f64 y (/.f64 y (-.f64 x y))) (*.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (*.f64 y (/.f64 y (-.f64 x y)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 x x) (-.f64 x y))) (*.f64 (*.f64 y (/.f64 y (-.f64 x y))) (*.f64 y (/.f64 y (-.f64 x y))))) (fma.f64 x (/.f64 x (-.f64 x y)) (*.f64 y (/.f64 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 x (*.f64 y (-.f64 y x))))) (fma.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x)))))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.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 #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) #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 #s(literal 1 binary64) (+.f64 x y))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) #s(literal 1 binary64)))
(*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x))))))
(*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (/.f64 (+.f64 x y) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) #s(literal 1 binary64)))
(*.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))))
(*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 x y))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))
(*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y (-.f64 y x)))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (*.f64 (+.f64 x y) (-.f64 x y)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) (pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) (-.f64 x y))) #s(literal -1 binary64)))
(*.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 (*.f64 y (-.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 x (*.f64 x (*.f64 x x)))))
(*.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (-.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 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))) (fma.f64 y (+.f64 x y) (*.f64 x x)))
(*.f64 (pow.f64 (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (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 #s(literal 1 binary64) (fma.f64 (*.f64 y (*.f64 y y)) (-.f64 (*.f64 y (*.f64 y y)) (*.f64 x (*.f64 x x))) (*.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x x))))))
(*.f64 (pow.f64 (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y))))
(*.f64 (pow.f64 (/.f64 (-.f64 x y) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (fma.f64 y (+.f64 x y) (*.f64 x x)) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x (*.f64 x (*.f64 x x)) (*.f64 (*.f64 y y) (fma.f64 x x (*.f64 y y))))))
(*.f64 (pow.f64 (/.f64 (-.f64 x y) (*.f64 (fma.f64 x x (*.f64 y y)) (*.f64 (+.f64 x y) (-.f64 x y)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 y y))))
(+.f64 z #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) z)
(+.f64 (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))) #s(literal -1 binary64)))
(-.f64 (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) z)) (/.f64 (*.f64 z z) (-.f64 #s(literal 1 binary64) z)))
(fma.f64 z #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 z (/.f64 z (+.f64 z #s(literal -1 binary64))) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(fma.f64 #s(literal 1 binary64) z #s(literal 1 binary64))
(fma.f64 (*.f64 z z) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(fma.f64 (/.f64 (*.f64 z z) (fma.f64 z z #s(literal -1 binary64))) (+.f64 z #s(literal 1 binary64)) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(fma.f64 (/.f64 (*.f64 z z) (fma.f64 z (*.f64 z z) #s(literal -1 binary64))) (+.f64 (fma.f64 z z #s(literal 1 binary64)) z) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(neg.f64 (/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(neg.f64 (/.f64 (fma.f64 z z #s(literal -1 binary64)) (-.f64 #s(literal 1 binary64) z)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (+.f64 z #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) (*.f64 z z))))
(/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(/.f64 (fma.f64 z z #s(literal -1 binary64)) (+.f64 z #s(literal -1 binary64)))
(/.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (-.f64 #s(literal 1 binary64) z))
(/.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (-.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal 1 binary64)) (*.f64 z (*.f64 z z)))))
(/.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 z (*.f64 z z) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (*.f64 (+.f64 z #s(literal -1 binary64)) (fma.f64 z (*.f64 z (*.f64 z z)) (fma.f64 z z #s(literal 1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (-.f64 #s(literal 1 binary64) z))
(/.f64 (fma.f64 z (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (*.f64 (+.f64 z #s(literal -1 binary64)) (fma.f64 z z #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (*.f64 (+.f64 z #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (+.f64 z #s(literal -1 binary64)) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal 1 binary64)) (*.f64 z (*.f64 z z))) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 z (*.f64 z z) #s(literal -1 binary64)) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 z (*.f64 z (*.f64 z z)) (fma.f64 z z #s(literal 1 binary64))) (+.f64 z #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 z z #s(literal 1 binary64)) (+.f64 z #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) z)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z))) (neg.f64 (-.f64 #s(literal 1 binary64) z)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))) (/.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) z))))) (/.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) z))))) (fma.f64 (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (fma.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (*.f64 (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64))) (/.f64 (*.f64 z z) (+.f64 z #s(literal -1 binary64)))) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))) (fma.f64 z (/.f64 z (+.f64 z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))) (-.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal 1 binary64)) (*.f64 z (*.f64 z z))))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))) (fma.f64 z (*.f64 z z) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))) (fma.f64 z (*.f64 z (*.f64 z z)) (fma.f64 z z #s(literal 1 binary64))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z (*.f64 z z)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))) (fma.f64 z z #s(literal 1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) (*.f64 z z))) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64)))
(*.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 (+.f64 z #s(literal 1 binary64)) (*.f64 (+.f64 z #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64)))))
(*.f64 (+.f64 z #s(literal 1 binary64)) (/.f64 (+.f64 z #s(literal -1 binary64)) (+.f64 z #s(literal -1 binary64))))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(*.f64 (neg.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z))))
(*.f64 (neg.f64 (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) z)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (fma.f64 z z #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 z z #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (fma.f64 z (*.f64 z z) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 z z #s(literal 1 binary64)) z)) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) z)))
(*.f64 (/.f64 (fma.f64 z z #s(literal -1 binary64)) (fma.f64 z z #s(literal -1 binary64))) (+.f64 z #s(literal 1 binary64)))
(*.f64 (/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 #s(literal 1 binary64) z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))))) (fma.f64 (-.f64 #s(literal 1 binary64) z) (-.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 z z)) (*.f64 z (*.f64 z (*.f64 z z)))))
(*.f64 (/.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (+.f64 (fma.f64 z z #s(literal -1 binary64)) z))) (+.f64 (fma.f64 z z #s(literal -1 binary64)) z))
(*.f64 (/.f64 (fma.f64 z z #s(literal -1 binary64)) (fma.f64 z (*.f64 z z) #s(literal -1 binary64))) (+.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(*.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (-.f64 #s(literal 1 binary64) (*.f64 z (*.f64 z z)))) (+.f64 (fma.f64 z z #s(literal 1 binary64)) z))
(*.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 z z)) (-.f64 #s(literal 1 binary64) (*.f64 z z))) (+.f64 z #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z))) #s(literal 1 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal 1 binary64)) (*.f64 z (*.f64 z z)))))
(*.f64 (pow.f64 (/.f64 (-.f64 (fma.f64 z z #s(literal 1 binary64)) z) (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 z (*.f64 z z) #s(literal -1 binary64))))
(*.f64 (pow.f64 (/.f64 (+.f64 z #s(literal -1 binary64)) (fma.f64 (*.f64 z (*.f64 z z)) (*.f64 z (*.f64 z z)) #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 z (*.f64 z (*.f64 z z)) (fma.f64 z z #s(literal 1 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 z #s(literal -1 binary64)) (fma.f64 z (*.f64 z (*.f64 z z)) #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 z z #s(literal 1 binary64))))

eval117.0ms (2.5%)

Memory
-9.3MiB live, 139.6MiB allocated
Compiler

Compiled 10 945 to 1 121 computations (89.8% saved)

prune478.0ms (10%)

Memory
21.3MiB live, 179.7MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New4754479
Fresh000
Picked101
Done000
Total4764480
Accuracy
100.0%
Counts
480 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
54.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
50.2%
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
52.5%
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
Compiler

Compiled 32 to 17 computations (46.9% saved)

simplify12.0ms (0.3%)

Memory
-11.8MiB live, 27.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 z x x)
cost-diff0
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
cost-diff0
(fma.f64 y z y)
cost-diff0
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
cost-diff0
(+.f64 y x)
cost-diff0
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
cost-diff0
(+.f64 y x)
cost-diff0
(*.f64 z (+.f64 y x))
cost-diff0
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
Rules
296×lower-fma.f32
292×lower-fma.f64
104×lower-+.f32
102×lower-+.f64
92×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01576
02176
14376
26676
311176
422576
526076
626076
026076
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
(*.f64 z (+.f64 y x))
z
(+.f64 y x)
y
x
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
(+.f64 y x)
y
x
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
(fma.f64 y z y)
y
z
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
(fma.f64 z x x)
z
x
Outputs
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
#s(approx (* (+ x y) (+ z 1)) (*.f64 (+.f64 x y) z))
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 x y) z)
z
(+.f64 y x)
(+.f64 x y)
y
x
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) (+.f64 x y))
(+.f64 y x)
(+.f64 x y)
y
x
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
(fma.f64 y z y)
y
z
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 x z x))
(fma.f64 z x x)
(fma.f64 x z x)
z
x

localize40.0ms (0.8%)

Memory
22.7MiB live, 102.4MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(fma.f64 z x x)
accuracy48.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
accuracy100.0%
(fma.f64 y z y)
accuracy54.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
accuracy100.0%
(+.f64 y x)
accuracy50.2%
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
accuracy100.0%
(+.f64 y x)
accuracy100.0%
(*.f64 z (+.f64 y x))
accuracy52.5%
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
Samples
25.0ms256×0valid
Compiler

Compiled 60 to 15 computations (75% saved)

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

series10.0ms (0.2%)

Memory
-16.2MiB live, 22.3MiB allocated
Counts
8 → 252
Calls
Call 1
Inputs
#<alt #s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))>
#<alt (*.f64 z (+.f64 y x))>
#<alt (+.f64 y x)>
#<alt #s(approx (* (+ x y) (+ z 1)) (+.f64 y x))>
#<alt #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))>
#<alt (fma.f64 y z y)>
#<alt #s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))>
#<alt (fma.f64 z x x)>
Outputs
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* z (+ x y))>
#<alt (* x z)>
#<alt (+ (* x z) (* y z))>
#<alt (+ (* x z) (* y z))>
#<alt (+ (* x z) (* y z))>
#<alt (* y z)>
#<alt (* y (+ z (/ (* x z) y)))>
#<alt (* y (+ z (/ (* x z) y)))>
#<alt (* y (+ z (/ (* x z) y)))>
#<alt (* y z)>
#<alt (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))>
#<alt (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))>
#<alt (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))>
#<alt (* y z)>
#<alt (+ (* x z) (* y z))>
#<alt (+ (* x z) (* y z))>
#<alt (+ (* x z) (* y z))>
#<alt (* x z)>
#<alt (* x (+ z (/ (* y z) x)))>
#<alt (* x (+ z (/ (* y z) x)))>
#<alt (* x (+ z (/ (* y z) x)))>
#<alt (* x z)>
#<alt (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))>
#<alt (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))>
#<alt (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))>
#<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 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 (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt y>
#<alt (+ y (* y z))>
#<alt (+ y (* y z))>
#<alt (+ y (* y z))>
#<alt (* y z)>
#<alt (* z (+ y (/ y z)))>
#<alt (* z (+ y (/ y z)))>
#<alt (* z (+ y (/ y z)))>
#<alt (* y z)>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt x>
#<alt (+ x (* x z))>
#<alt (+ x (* x z))>
#<alt (+ x (* x z))>
#<alt (* x z)>
#<alt (* z (+ x (/ x z)))>
#<alt (* z (+ x (/ x z)))>
#<alt (* z (+ x (/ x z)))>
#<alt (* x z)>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
Calls

63 calls:

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

simplify317.0ms (6.6%)

Memory
10.5MiB live, 378.5MiB allocated
Algorithm
egg-herbie
Rules
11 456×lower-fma.f64
11 456×lower-fma.f32
2 360×lower-*.f64
2 360×lower-*.f32
1 498×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0951380
13531380
210721380
332591380
459651380
571961380
677031380
080281314
Stop Event
iter limit
node limit
Counts
252 → 244
Calls
Call 1
Inputs
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* z (+ x y))
(* x z)
(+ (* x z) (* y z))
(+ (* x z) (* y z))
(+ (* x z) (* y z))
(* y z)
(* y (+ z (/ (* x z) y)))
(* y (+ z (/ (* x z) y)))
(* y (+ z (/ (* x z) y)))
(* y z)
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(* y z)
(+ (* x z) (* y z))
(+ (* x z) (* y z))
(+ (* x z) (* y z))
(* x z)
(* x (+ z (/ (* y z) x)))
(* x (+ z (/ (* y z) x)))
(* x (+ z (/ (* y z) x)))
(* x z)
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
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)))
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)))
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
y
(+ y (* y z))
(+ y (* y z))
(+ y (* y z))
(* y z)
(* z (+ y (/ y z)))
(* z (+ y (/ y z)))
(* z (+ y (/ y z)))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
x
(+ x (* x z))
(+ x (* x z))
(+ x (* x z))
(* x z)
(* z (+ x (/ x z)))
(* z (+ x (/ x z)))
(* z (+ x (/ x z)))
(* x z)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
Outputs
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* x z)
(*.f64 z x)
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(* y z)
(*.f64 y z)
(* y (+ z (/ (* x z) y)))
(*.f64 z (+.f64 y x))
(* y (+ z (/ (* x z) y)))
(*.f64 z (+.f64 y x))
(* y (+ z (/ (* x z) y)))
(*.f64 z (+.f64 y x))
(* y z)
(*.f64 y z)
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(*.f64 z (+.f64 y x))
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(*.f64 z (+.f64 y x))
(* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))
(*.f64 z (+.f64 y x))
(* y z)
(*.f64 y z)
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(+ (* x z) (* y z))
(*.f64 z (+.f64 y x))
(* x z)
(*.f64 z x)
(* x (+ z (/ (* y z) x)))
(*.f64 z (+.f64 y x))
(* x (+ z (/ (* y z) x)))
(*.f64 z (+.f64 y x))
(* x (+ z (/ (* y z) x)))
(*.f64 z (+.f64 y x))
(* x z)
(*.f64 z x)
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
(*.f64 z (+.f64 y x))
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
(*.f64 z (+.f64 y x))
(* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))
(*.f64 z (+.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)
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)
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
y
(+ y (* y z))
(fma.f64 y z y)
(+ y (* y z))
(fma.f64 y z y)
(+ y (* y z))
(fma.f64 y z y)
(* y z)
(*.f64 y z)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* y z)
(*.f64 y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
x
(+ x (* x z))
(fma.f64 z x x)
(+ x (* x z))
(fma.f64 z x x)
(+ x (* x z))
(fma.f64 z x x)
(* x z)
(*.f64 z x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* x z)
(*.f64 z x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)

rewrite351.0ms (7.3%)

Memory
-15.9MiB live, 500.1MiB allocated
Algorithm
batch-egg-rewrite
Rules
9 000×lower-fma.f32
8 996×lower-fma.f64
5 056×lower-*.f32
5 054×lower-*.f64
3 224×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01564
02164
19664
275164
0836464
Stop Event
iter limit
node limit
iter limit
Counts
8 → 238
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
(*.f64 z (+.f64 y x))
(+.f64 y x)
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
(fma.f64 y z y)
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
(fma.f64 z x x)
Outputs
#s(approx (* (+ x y) (+ z 1)) (*.f64 (+.f64 x y) z))
(+.f64 (*.f64 x z) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 x z))
(-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (*.f64 z (-.f64 y x))) (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (*.f64 z (-.f64 y x))))
(fma.f64 x z (*.f64 y z))
(fma.f64 y z (*.f64 x z))
(fma.f64 z x (*.f64 y z))
(fma.f64 z y (*.f64 x z))
(fma.f64 #s(literal 1 binary64) (*.f64 x z) (*.f64 y z))
(fma.f64 #s(literal 1 binary64) (*.f64 y z) (*.f64 x z))
(fma.f64 (*.f64 x z) #s(literal 1 binary64) (*.f64 y z))
(fma.f64 (*.f64 y z) #s(literal 1 binary64) (*.f64 x z))
(/.f64 z (/.f64 #s(literal 1 binary64) (+.f64 x y)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y (*.f64 y (*.f64 z z)) (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 y z)))) (*.f64 (*.f64 z (*.f64 z z)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 z (-.f64 y x)) (*.f64 (*.f64 (+.f64 x y) z) (*.f64 z (-.f64 y x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x y) (*.f64 (*.f64 (+.f64 x y) z) (-.f64 x y))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 y x) (*.f64 (*.f64 (+.f64 x y) z) (-.f64 y x))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x y) (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 y x) (*.f64 (+.f64 x y) (*.f64 (-.f64 y x) z))))
(/.f64 (*.f64 (*.f64 z (*.f64 z z)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 y (*.f64 y (*.f64 z z)) (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 y z)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 z (-.f64 y x))) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(/.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 x (-.f64 x y) (*.f64 y y)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 x y)) (-.f64 x y))
(/.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 y x)) (-.f64 y x))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(/.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z) (fma.f64 x (-.f64 x y) (*.f64 y y)))
(/.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (-.f64 x y))
(/.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 y x) z)) (-.f64 y x))
(/.f64 (neg.f64 (*.f64 (*.f64 z (*.f64 z z)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 y (*.f64 y (*.f64 z z)) (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 y z))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 z (-.f64 y x)))) (neg.f64 (*.f64 z (-.f64 y x))))
(/.f64 (neg.f64 (*.f64 z (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x))))
(/.f64 (neg.f64 (*.f64 z (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 (+.f64 x y) z) (-.f64 x y))) (neg.f64 (-.f64 x y)))
(/.f64 (neg.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 y x))) (neg.f64 (-.f64 y x)))
(/.f64 (neg.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z)) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z)) (neg.f64 (fma.f64 x (-.f64 x y) (*.f64 y y))))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z))) (neg.f64 (-.f64 x y)))
(/.f64 (neg.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 y x) z))) (neg.f64 (-.f64 y x)))
(/.f64 (fma.f64 x (*.f64 (*.f64 x x) (*.f64 z (*.f64 z z))) (*.f64 (*.f64 y z) (*.f64 y (*.f64 y (*.f64 z z))))) (fma.f64 z (*.f64 x (*.f64 x z)) (-.f64 (*.f64 y (*.f64 y (*.f64 z z))) (*.f64 (*.f64 x z) (*.f64 y z)))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 z z))) (*.f64 y (*.f64 y (*.f64 z z)))) (-.f64 (*.f64 x z) (*.f64 y z)))
(*.f64 (+.f64 x y) z)
(*.f64 z (+.f64 x y))
(*.f64 #s(literal 1 binary64) (*.f64 (+.f64 x y) z))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x))) z))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))) z))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) z))
(*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 y x)) z))
(*.f64 (*.f64 (+.f64 x y) z) #s(literal 1 binary64))
(*.f64 (*.f64 (*.f64 z (*.f64 z z)) (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (fma.f64 y (*.f64 y (*.f64 z z)) (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 y z))))))
(*.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 z (-.f64 y x))) (/.f64 #s(literal 1 binary64) (*.f64 z (-.f64 y x))))
(*.f64 (*.f64 z (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))))
(*.f64 (*.f64 z (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 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)))
(*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x))))
(*.f64 (*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) z) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(*.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 x y) z)) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) (*.f64 (-.f64 y x) z)) (/.f64 #s(literal 1 binary64) (-.f64 y x)))
(+.f64 x y)
(+.f64 y x)
(+.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 x y))))
(+.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 y x))))
(-.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 #s(literal 1 binary64) y)
(fma.f64 y #s(literal 1 binary64) x)
(fma.f64 #s(literal 1 binary64) x y)
(fma.f64 #s(literal 1 binary64) y x)
(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 y y) (/.f64 #s(literal 1 binary64) (-.f64 y x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 y x))))
(neg.f64 (/.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)))))
(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 (*.f64 (+.f64 x y) (-.f64 y x)) (neg.f64 (-.f64 y x))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (fma.f64 y (-.f64 y x) (*.f64 x x))))
(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)))
(neg.f64 (/.f64 (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x))) (-.f64 y 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 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(/.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 (*.f64 (+.f64 x y) (-.f64 y x)) (-.f64 y x))
(/.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x))))
(/.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 (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x))) (neg.f64 (-.f64 y x)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 x 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 (*.f64 (*.f64 y y) (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 x x))) (*.f64 (-.f64 y x) (-.f64 y x)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))))) (neg.f64 (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)))))
(/.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 (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x)))) (neg.f64 (neg.f64 (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (-.f64 x y)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y y) (-.f64 x y)) #s(literal 3 binary64))) (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 (pow.f64 (/.f64 (*.f64 y y) (-.f64 y x)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (-.f64 y x)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 y y) (-.f64 y x)) (fma.f64 (/.f64 (*.f64 x x) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x)) (*.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x))))))
(/.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)))) (+.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 y y) (-.f64 y x))) (*.f64 (/.f64 (*.f64 x x) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x)))) (+.f64 (/.f64 (*.f64 y y) (-.f64 y x)) (/.f64 (*.f64 x x) (-.f64 y x))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 x y)) #s(literal -1 binary64))
(*.f64 (+.f64 x y) #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 y x) (/.f64 #s(literal 1 binary64) (-.f64 y x))))
(*.f64 #s(literal 1 binary64) (+.f64 x y))
(*.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x)))))
(*.f64 (fma.f64 y (-.f64 y x) (*.f64 x x)) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y)))))
(*.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))))
(*.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 x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x))) #s(literal 1 binary64)))
(*.f64 (fma.f64 x (*.f64 x x) (*.f64 y (*.f64 y y))) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x (-.f64 x y) (*.f64 y y))) #s(literal 1 binary64)))
(*.f64 (fma.f64 x (-.f64 x y) (*.f64 y y)) (*.f64 (+.f64 x y) (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y x) (*.f64 x x)))))
(*.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 (*.f64 (+.f64 x y) (-.f64 x y)) (/.f64 #s(literal 1 binary64) (-.f64 x y)))
(*.f64 (*.f64 (+.f64 x y) (-.f64 x y)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 x y)) #s(literal 1 binary64)))
(*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (/.f64 #s(literal 1 binary64) (-.f64 y x)))
(*.f64 (*.f64 (+.f64 x y) (-.f64 y x)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 y x)) #s(literal 1 binary64)))
(*.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)))))
(*.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 (neg.f64 (*.f64 (+.f64 x y) (-.f64 y x))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 y x))))
#s(approx (* (+ x y) (+ z 1)) (+.f64 x y))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
(+.f64 y (*.f64 y z))
(+.f64 (*.f64 y z) y)
(+.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y))))
(-.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)))
(-.f64 (/.f64 (*.f64 y y) (-.f64 y (*.f64 y z))) (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 y (*.f64 y z))))
(fma.f64 y z y)
(fma.f64 y #s(literal 1 binary64) (*.f64 y z))
(fma.f64 z y y)
(fma.f64 #s(literal 1 binary64) y (*.f64 y z))
(fma.f64 #s(literal 1 binary64) (*.f64 y z) y)
(fma.f64 (*.f64 y z) #s(literal 1 binary64) y)
(fma.f64 (*.f64 y (*.f64 y (*.f64 z z))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 y z) y)) (neg.f64 (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y))))
(neg.f64 (/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (neg.f64 (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))))))
(neg.f64 (/.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y)) (neg.f64 (-.f64 (*.f64 y z) y))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y)))) (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z))))))
(neg.f64 (/.f64 (neg.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y))) (-.f64 (*.f64 y z) y)))
(/.f64 y (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 y z y)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y z y)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 y y (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) y))) (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 y (*.f64 y z)) (*.f64 y (-.f64 y (*.f64 y (*.f64 z z))))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (fma.f64 y y (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) y))))
(/.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y)) (-.f64 (*.f64 y z) y))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y)))) (neg.f64 (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y)))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) y)))))
(/.f64 (neg.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y))) (neg.f64 (-.f64 (*.f64 y z) y)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y z y))))
(/.f64 (*.f64 y (-.f64 y (*.f64 y (*.f64 z z)))) (-.f64 y (*.f64 y z)))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (*.f64 (-.f64 (*.f64 y z) y) (*.f64 y y))) (*.f64 (-.f64 (*.f64 y z) y) (-.f64 (*.f64 y z) y)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))))) (neg.f64 (neg.f64 (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y)))) (neg.f64 (neg.f64 (-.f64 (*.f64 y z) y))))
(/.f64 (neg.f64 (*.f64 y (-.f64 y (*.f64 y (*.f64 z z))))) (neg.f64 (-.f64 y (*.f64 y z))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (fma.f64 (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)) (*.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y))) (*.f64 (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)))) (+.f64 (/.f64 (*.f64 y (*.f64 y (*.f64 z z))) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y z y)) #s(literal -1 binary64))
(*.f64 y (+.f64 z #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 y z y))
(*.f64 (+.f64 z #s(literal 1 binary64)) y)
(*.f64 (fma.f64 y z y) (*.f64 (-.f64 (*.f64 y z) y) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 y z) y))))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 z z (-.f64 #s(literal 1 binary64) z))) y))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z))))))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y))) (/.f64 #s(literal 1 binary64) (fma.f64 y y (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) y)))))
(*.f64 (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))) (*.f64 (fma.f64 y z y) (/.f64 #s(literal 1 binary64) (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))))))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) y))
(*.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 y z) y)))
(*.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 y (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 y (fma.f64 y (*.f64 z z) (-.f64 y (*.f64 y z)))))))
(*.f64 (neg.f64 (*.f64 y (-.f64 (*.f64 y (*.f64 z z)) y))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 y z) y))))
(*.f64 (*.f64 y (-.f64 y (*.f64 y (*.f64 z z)))) (/.f64 #s(literal 1 binary64) (-.f64 y (*.f64 y z))))
(*.f64 (*.f64 y (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(*.f64 (*.f64 y (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 z z (-.f64 #s(literal 1 binary64) z))))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 x z x))
(+.f64 x (*.f64 x z))
(+.f64 (*.f64 x z) x)
(+.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x))))
(-.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 x z))) (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 x (*.f64 x z))))
(fma.f64 x z x)
(fma.f64 x #s(literal 1 binary64) (*.f64 x z))
(fma.f64 z x x)
(fma.f64 #s(literal 1 binary64) x (*.f64 x z))
(fma.f64 #s(literal 1 binary64) (*.f64 x z) x)
(fma.f64 (*.f64 x z) #s(literal 1 binary64) x)
(fma.f64 (*.f64 x (*.f64 x (*.f64 z z))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x z) x)) (neg.f64 (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x))))
(neg.f64 (/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (neg.f64 (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))))))
(neg.f64 (/.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x)) (neg.f64 (-.f64 (*.f64 x z) x))))
(neg.f64 (/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x)))) (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z))))))
(neg.f64 (/.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x))) (-.f64 (*.f64 x z) x)))
(/.f64 x (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 x z x)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x z x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 x x (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) x))) (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 x (*.f64 x z)) (*.f64 x (-.f64 x (*.f64 x (*.f64 z z))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 z z (-.f64 #s(literal 1 binary64) z)) (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) x)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 z #s(literal -1 binary64)) (*.f64 (fma.f64 z z #s(literal -1 binary64)) x)))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (fma.f64 x x (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) x))))
(/.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x)) (-.f64 (*.f64 x z) x))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x)))) (neg.f64 (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x)))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) x)))))
(/.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x))) (neg.f64 (-.f64 (*.f64 x z) x)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x z x))))
(/.f64 (*.f64 x (-.f64 x (*.f64 x (*.f64 z z)))) (-.f64 x (*.f64 x z)))
(/.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) x) (fma.f64 z z (-.f64 #s(literal 1 binary64) z)))
(/.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) x) (+.f64 z #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (*.f64 (-.f64 (*.f64 x z) x) (*.f64 x x))) (*.f64 (-.f64 (*.f64 x z) x) (-.f64 (*.f64 x z) x)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))))) (neg.f64 (neg.f64 (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))))))
(/.f64 (neg.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x)))) (neg.f64 (neg.f64 (-.f64 (*.f64 x z) x))))
(/.f64 (neg.f64 (*.f64 x (-.f64 x (*.f64 x (*.f64 z z))))) (neg.f64 (-.f64 x (*.f64 x z))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) x)) (neg.f64 (fma.f64 z z (-.f64 #s(literal 1 binary64) z))))
(/.f64 (neg.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) x)) (+.f64 (neg.f64 z) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (fma.f64 (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)) (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x))) (*.f64 (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x)))) (+.f64 (/.f64 (*.f64 x (*.f64 x (*.f64 z z))) (-.f64 (*.f64 x z) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 x z) x))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 x z x)) #s(literal -1 binary64))
(*.f64 x (+.f64 z #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 x z x))
(*.f64 (+.f64 z #s(literal 1 binary64)) x)
(*.f64 (fma.f64 x z x) (*.f64 (-.f64 (*.f64 x z) x) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x z) x))))
(*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (fma.f64 z z (-.f64 #s(literal 1 binary64) z))) x))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z))))))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x))) (/.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 (*.f64 x z) (-.f64 (*.f64 x z) x)))))
(*.f64 (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))) (*.f64 (fma.f64 x z x) (/.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))))))
(*.f64 (fma.f64 z z #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))) x))
(*.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 x z) x)))
(*.f64 (neg.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) (*.f64 x (*.f64 x x)))) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x (fma.f64 x (*.f64 z z) (-.f64 x (*.f64 x z)))))))
(*.f64 (neg.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 z z)) x))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 x z) x))))
(*.f64 (*.f64 x (-.f64 x (*.f64 x (*.f64 z z)))) (/.f64 #s(literal 1 binary64) (-.f64 x (*.f64 x z))))
(*.f64 (*.f64 (fma.f64 z (*.f64 z z) #s(literal 1 binary64)) x) (/.f64 #s(literal 1 binary64) (fma.f64 z z (-.f64 #s(literal 1 binary64) z))))
(*.f64 (*.f64 (fma.f64 z z #s(literal -1 binary64)) x) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(*.f64 (*.f64 x (fma.f64 z z #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 z #s(literal -1 binary64))))
(*.f64 (*.f64 x (fma.f64 z (*.f64 z z) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 z z (-.f64 #s(literal 1 binary64) z))))

eval56.0ms (1.2%)

Memory
20.3MiB live, 132.6MiB allocated
Compiler

Compiled 7 609 to 590 computations (92.2% saved)

prune45.0ms (0.9%)

Memory
-25.2MiB live, 96.5MiB allocated
Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New5602562
Fresh000
Picked044
Done000
Total5606566
Accuracy
100.0%
Counts
566 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
54.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
50.2%
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
52.5%
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
27.9%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
29.2%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Compiler

Compiled 48 to 25 computations (47.9% saved)

simplify11.0ms (0.2%)

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

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z x)
cost-diff0
#s(approx (+ (* z x) x) (*.f64 z x))
cost-diff0
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
cost-diff0
(*.f64 y z)
cost-diff0
#s(approx (+ (* y z) y) (*.f64 y z))
cost-diff0
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Rules
296×lower-fma.f64
296×lower-fma.f32
104×lower-+.f64
104×lower-+.f32
92×distribute-lft-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01762
01962
13562
25962
310462
422662
527462
627462
027458
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (+ (* y z) y) (*.f64 y z))
(*.f64 y z)
y
z
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (+ (* z x) x) (*.f64 z x))
(*.f64 z x)
z
x
Outputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (+ (* y z) y) (*.f64 y z))
(*.f64 y z)
y
z
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 x z)))
#s(approx (+ (* z x) x) (*.f64 z x))
#s(approx (+ (* z x) x) (*.f64 x z))
(*.f64 z x)
(*.f64 x z)
z
x

localize33.0ms (0.7%)

Memory
-22.3MiB live, 56.1MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 z x)
accuracy53.0%
#s(approx (+ (* z x) x) (*.f64 z x))
accuracy48.8%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
accuracy100.0%
(*.f64 y z)
accuracy54.8%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
accuracy52.9%
#s(approx (+ (* y z) y) (*.f64 y z))
Samples
22.0ms256×0valid
Compiler

Compiled 36 to 13 computations (63.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-add: 5.0ms (52.7% of total)
ival-mult: 5.0ms (52.7% 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.1%)

Memory
8.2MiB live, 8.2MiB allocated
Counts
6 → 168
Calls
Call 1
Inputs
#<alt #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))>
#<alt #s(approx (+ (* y z) y) (*.f64 y z))>
#<alt (*.f64 y z)>
#<alt #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))>
#<alt #s(approx (+ (* z x) x) (*.f64 z x))>
#<alt (*.f64 z x)>
Outputs
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt (* -1 (* y (- (* -1 z) 1)))>
#<alt y>
#<alt (+ y (* y z))>
#<alt (+ y (* y z))>
#<alt (+ y (* y z))>
#<alt (* y z)>
#<alt (* z (+ y (/ y z)))>
#<alt (* z (+ y (/ y z)))>
#<alt (* z (+ y (/ y z)))>
#<alt (* y z)>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y z)>
#<alt (* y (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))>
#<alt (* x (+ 1 z))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (+ (* x (+ 1 z)) (* y (+ 1 z)))>
#<alt (* y (+ 1 z))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))>
#<alt (* y (+ 1 z))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))>
#<alt (+ x y)>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (+ x (+ y (* z (+ x y))))>
#<alt (* z (+ x y))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x (+ y (+ (/ x z) (/ y z)))))>
#<alt (* z (+ x y))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt (* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))>
#<alt x>
#<alt (+ x (* x z))>
#<alt (+ x (* x z))>
#<alt (+ x (* x z))>
#<alt (* x z)>
#<alt (* z (+ x (/ x z)))>
#<alt (* z (+ x (/ x z)))>
#<alt (* z (+ x (/ x z)))>
#<alt (* x z)>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* x (+ 1 z))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* -1 (* x (- (* -1 z) 1)))>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
#<alt (* x z)>
Calls

42 calls:

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

simplify227.0ms (4.7%)

Memory
0.1MiB live, 325.8MiB allocated
Algorithm
egg-herbie
Rules
10 090×lower-fma.f64
10 090×lower-fma.f32
2 750×lower-*.f64
2 750×lower-*.f32
1 654×times-frac
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066832
1246832
2771832
32274832
45784832
08340778
Stop Event
iter limit
node limit
Counts
168 → 166
Calls
Call 1
Inputs
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* y (+ 1 z))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
(* -1 (* y (- (* -1 z) 1)))
y
(+ y (* y z))
(+ y (* y z))
(+ y (* y z))
(* y z)
(* z (+ y (/ y z)))
(* z (+ y (/ y z)))
(* z (+ y (/ y z)))
(* y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y z)
(* y (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* x (+ 1 z))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(* x (+ 1 z))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(* x (+ 1 z))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(* y (+ 1 z))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(* y (+ 1 z))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(+ x y)
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(+ x (+ y (* z (+ x y))))
(* z (+ x y))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(* z (+ x y))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
x
(+ x (* x z))
(+ x (* x z))
(+ x (* x z))
(* x z)
(* z (+ x (/ x z)))
(* z (+ x (/ x z)))
(* z (+ x (/ x z)))
(* x z)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* x (+ 1 z))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
(* -1 (* x (- (* -1 z) 1)))
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
(* x z)
Outputs
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
(* -1 (* y (- (* -1 z) 1)))
(fma.f64 y z y)
y
(+ y (* y z))
(fma.f64 y z y)
(+ y (* y z))
(fma.f64 y z y)
(+ y (* y z))
(fma.f64 y z y)
(* y z)
(*.f64 y z)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* z (+ y (/ y z)))
(fma.f64 y z y)
(* y z)
(*.f64 y z)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* -1 (* z (+ (* -1 y) (* -1 (/ y z)))))
(fma.f64 y z y)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y z)
(*.f64 y z)
(* y (+ 1 z))
(fma.f64 y z y)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 (+ z (/ (* y (+ 1 z)) x))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* x (+ (* -1 (+ 1 z)) (* -1 (/ (* y (+ 1 z)) x)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* x (+ 1 z))
(fma.f64 z x x)
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ (* x (+ 1 z)) (* y (+ 1 z)))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 (+ z (/ (* x (+ 1 z)) y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* y (+ 1 z))
(fma.f64 y z y)
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* y (+ (* -1 (+ 1 z)) (* -1 (/ (* x (+ 1 z)) y)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x y)
(+.f64 y x)
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(+ x (+ y (* z (+ x y))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x (+ y (+ (/ x z) (/ y z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* z (+ x y))
(*.f64 z (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
(* -1 (* z (+ (* -1 (+ x y)) (* -1 (/ (+ x y) z)))))
(*.f64 (+.f64 #s(literal 1 binary64) z) (+.f64 y x))
x
(+ x (* x z))
(fma.f64 z x x)
(+ x (* x z))
(fma.f64 z x x)
(+ x (* x z))
(fma.f64 z x x)
(* x z)
(*.f64 z x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* z (+ x (/ x z)))
(fma.f64 z x x)
(* x z)
(*.f64 z x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* -1 (* z (+ (* -1 x) (* -1 (/ x z)))))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* x (+ 1 z))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* -1 (* x (- (* -1 z) 1)))
(fma.f64 z x x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)
(* x z)
(*.f64 z x)

rewrite288.0ms (6%)

Memory
-7.8MiB live, 379.3MiB allocated
Algorithm
batch-egg-rewrite
Rules
6 824×lower-fma.f64
6 824×lower-fma.f32
5 782×lower-*.f32
5 778×lower-*.f64
3 990×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01758
01958
18058
260958
0836354
Stop Event
iter limit
node limit
iter limit
Counts
6 → 12
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (+ (* y z) y) (*.f64 y z))
(*.f64 y z)
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (+ (* z x) x) (*.f64 z x))
(*.f64 z x)
Outputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (+ (* y z) y) (*.f64 y z))
(*.f64 y z)
(*.f64 z y)
(*.f64 #s(literal 1 binary64) (*.f64 y z))
(*.f64 (*.f64 y z) #s(literal 1 binary64))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 x z)))
#s(approx (+ (* z x) x) (*.f64 x z))
(*.f64 x z)
(*.f64 z x)
(*.f64 #s(literal 1 binary64) (*.f64 x z))
(*.f64 (*.f64 x z) #s(literal 1 binary64))

eval15.0ms (0.3%)

Memory
34.8MiB live, 34.8MiB allocated
Compiler

Compiled 1 155 to 18 computations (98.4% saved)

prune7.0ms (0.1%)

Memory
-27.3MiB live, 9.8MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New1780178
Fresh000
Picked022
Done044
Total1786184
Accuracy
100.0%
Counts
184 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
54.8%
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
50.2%
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
52.5%
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
27.9%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
29.2%
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Compiler

Compiled 88 to 38 computations (56.8% saved)

regimes50.0ms (1%)

Memory
-2.1MiB live, 61.3MiB allocated
Counts
7 → 1
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Outputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Calls

6 calls:

12.0ms
y
3.0ms
(+.f64 x y)
3.0ms
x
3.0ms
z
3.0ms
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
100.0%1(+.f64 x y)
100.0%1(+.f64 z #s(literal 1 binary64))
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes18.0ms (0.4%)

Memory
-5.6MiB live, 32.3MiB allocated
Counts
6 → 2
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
#s(approx (* (+ x y) (+ z 1)) (*.f64 z (+.f64 y x)))
Outputs
#s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
Calls

6 calls:

4.0ms
(+.f64 x y)
3.0ms
x
3.0ms
y
3.0ms
z
3.0ms
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Results
AccuracySegmentsBranch
84.0%2x
83.2%2y
98.9%3z
86.7%4(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
98.4%2(+.f64 x y)
98.9%3(+.f64 z #s(literal 1 binary64))
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes15.0ms (0.3%)

Memory
-3.5MiB live, 33.6MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
Outputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y))
Calls

6 calls:

4.0ms
z
2.0ms
(+.f64 x y)
2.0ms
x
2.0ms
y
2.0ms
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
Results
AccuracySegmentsBranch
70.0%2y
71.5%3(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
72.7%3x
77.6%3z
77.6%3(+.f64 z #s(literal 1 binary64))
83.1%4(+.f64 x y)
Compiler

Compiled 34 to 25 computations (26.5% saved)

regimes6.0ms (0.1%)

Memory
12.4MiB live, 12.4MiB allocated
Counts
3 → 3
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
Outputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x)))
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Calls

3 calls:

2.0ms
(+.f64 x y)
2.0ms
z
2.0ms
(+.f64 z #s(literal 1 binary64))
Results
AccuracySegmentsBranch
77.4%3z
77.4%3(+.f64 z #s(literal 1 binary64))
61.1%5(+.f64 x y)
Compiler

Compiled 16 to 12 computations (25% saved)

regimes3.0ms (0.1%)

Memory
10.6MiB live, 10.6MiB allocated
Counts
2 → 3
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Outputs
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))
Calls

2 calls:

1.0ms
z
1.0ms
(+.f64 z #s(literal 1 binary64))
Results
AccuracySegmentsBranch
75.9%3z
75.9%3(+.f64 z #s(literal 1 binary64))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes9.0ms (0.2%)

Memory
-14.5MiB live, 25.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
Outputs
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
Calls

6 calls:

2.0ms
(+.f64 z #s(literal 1 binary64))
1.0ms
z
1.0ms
x
1.0ms
y
1.0ms
(+.f64 x y)
Results
AccuracySegmentsBranch
50.2%1(+.f64 x y)
50.2%1y
50.2%1(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
50.2%1x
50.2%1z
50.2%1(+.f64 z #s(literal 1 binary64))
Compiler

Compiled 34 to 25 computations (26.5% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-9.551053318641994e-288
2.9882501459487254e-279
Compiler

Compiled 13 to 13 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-9.551053318641994e-288
2.9882501459487254e-279
0.0ms
-7.883488410227578e+64
-4.9164759677893315e+60
0.0ms
-4.822960627115116e+291
-6.7490513313322415e+283
Compiler

Compiled 13 to 13 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
915645886319965.3
121219116650815620.0
0.0ms
-1.30153195541367e+19
0.9976914175929097
Compiler

Compiled 13 to 13 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
915645886319965.3
121219116650815620.0
0.0ms
-1.30153195541367e+19
0.9976914175929097
Compiler

Compiled 13 to 13 computations (0% saved)

simplify10.0ms (0.2%)

Memory
-28.6MiB live, 14.2MiB allocated
Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
1-exp_binary64
1-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043237
151237
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(if (<=.f64 (+.f64 x y) #s(literal -6857655085992111/1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128 binary64)) #s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x)) #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y)))
(if (<=.f64 (+.f64 x y) #s(literal -3999999999999999831443609401385136528614207512386057135410071092916132616022289914504946148287614500592330451563947454856809828080168025678726105499863496711154494173799977940229033050646983792107070529102452199587840315845272602181673858644271966678327153142116021922822752784275414552936448 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) (if (<=.f64 (+.f64 x y) #s(literal -49999999999999999604519313141816925411378060847115227682784149504 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) (if (<=.f64 (+.f64 x y) #s(literal -6857655085992111/1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
Outputs
(*.f64 (+.f64 x y) (+.f64 z #s(literal 1 binary64)))
(if (<=.f64 (+.f64 x y) #s(literal -6857655085992111/1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128 binary64)) #s(approx (* (+ x y) (+ z 1)) (fma.f64 z x x)) #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y)))
(if (<=.f64 (+.f64 x y) #s(literal -3999999999999999831443609401385136528614207512386057135410071092916132616022289914504946148287614500592330451563947454856809828080168025678726105499863496711154494173799977940229033050646983792107070529102452199587840315845272602181673858644271966678327153142116021922822752784275414552936448 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) (if (<=.f64 (+.f64 x y) #s(literal -49999999999999999604519313141816925411378060847115227682784149504 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) (if (<=.f64 (+.f64 x y) #s(literal -6857655085992111/1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y)))))
(if (<=.f64 (+.f64 x y) #s(literal -3999999999999999831443609401385136528614207512386057135410071092916132616022289914504946148287614500592330451563947454856809828080168025678726105499863496711154494173799977940229033050646983792107070529102452199587840315845272602181673858644271966678327153142116021922822752784275414552936448 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 x z))) (if (<=.f64 (+.f64 x y) #s(literal -49999999999999999604519313141816925411378060847115227682784149504 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 x y)) (if (<=.f64 (+.f64 x y) #s(literal -6857655085992111/1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 x z))) #s(approx (* (+ x y) (+ z 1)) (fma.f64 y z y)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 z x))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* z x) x) (*.f64 x z))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 x y)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 y x)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
(if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal -10000000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z))) (if (<=.f64 (+.f64 z #s(literal 1 binary64)) #s(literal 1000000000000000 binary64)) #s(approx (* (+ x y) (+ z 1)) (+.f64 x y)) #s(approx (* (+ x y) (+ z 1)) #s(approx (+ (* y z) y) (*.f64 y z)))))
#s(approx (* (+ x y) (+ z 1)) (+.f64 y x))
#s(approx (* (+ x y) (+ z 1)) (+.f64 x y))

soundness852.0ms (17.8%)

Memory
17.4MiB live, 374.9MiB allocated
Rules
11 456×lower-fma.f64
11 456×lower-fma.f32
11 054×lower-fma.f64
11 054×lower-fma.f32
2 652×lower-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0951380
13531380
210721380
332591380
459651380
571961380
677031380
080281314
059322
1219322
2730322
32461322
44974322
57661322
08239316
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 204 to 84 computations (58.8% saved)

preprocess81.0ms (1.7%)

Memory
3.4MiB live, 81.3MiB allocated
Remove

(sort x y)

Compiler

Compiled 318 to 112 computations (64.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...