Examples.Basics.ProofTests:f4 from sbv-4.4

Time bar (total: 2.4s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.1MiB live, 0.1MiB 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 15 to 11 computations (26.7% saved)

sample599.0ms (24.7%)

Memory
242.6MiB live, 242.6MiB allocated
Samples
390.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 248.0ms
ival-mult: 178.0ms (71.8% of total)
ival-add: 57.0ms (23% of total)
ival-true: 5.0ms (2% of total)
exact: 4.0ms (1.6% of total)
ival-assert: 3.0ms (1.2% of total)
Bogosity

explain129.0ms (5.3%)

Memory
69.4MiB live, 69.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1313(1.237172134480686e+216 8.146341911267927e+227)0-(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
520(1.237172134480686e+216 8.146341911267927e+227)0-(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
00-0-(*.f64 x #s(literal 2 binary64))
00-0-(*.f64 x x)
00-0-(*.f64 (*.f64 x #s(literal 2 binary64)) y)
00-0-y
00-0-#s(literal 2 binary64)
00-0-(*.f64 y y)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))nan-rescue260
(*.f64 x x)overflow67
(*.f64 (*.f64 x #s(literal 2 binary64)) y)overflow31
+.f64(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))nan-rescue250
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))overflow72
(*.f64 x x)overflow67
(*.f64 (*.f64 x #s(literal 2 binary64)) y)overflow31
(*.f64 y y)overflow68
Confusion
Predicted +Predicted -
+160
-15225
Precision
0.5161290322580645
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+1600
-150225
Precision?
0.5161290322580645
Recall?
1.0
Freqs
test
numberfreq
0225
111
220
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
30.0ms512×0valid
Compiler

Compiled 212 to 78 computations (63.2% saved)

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

preprocess33.0ms (1.3%)

Memory
6.1MiB live, 6.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02371
17757
225055
363855
4121455
5150955
6153955
0913
01513
12311
24311
35111
0519
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
Outputs
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
Symmetry

(sort x y)

Compiler

Compiled 13 to 9 computations (30.8% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 13 to 9 computations (30.8% saved)

simplify3.0ms (0.1%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 x #s(literal 2 binary64)) y)
cost-diff0
(*.f64 x x)
cost-diff128
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
cost-diff448
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0939
01539
12335
24335
35135
05132
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
(*.f64 x x)
x
(*.f64 (*.f64 x #s(literal 2 binary64)) y)
(*.f64 x #s(literal 2 binary64))
#s(literal 2 binary64)
y
(*.f64 y y)
Outputs
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(*.f64 x x)
x
(*.f64 (*.f64 x #s(literal 2 binary64)) y)
(*.f64 y (*.f64 #s(literal 2 binary64) x))
(*.f64 x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
y
(*.f64 y y)

localize21.0ms (0.9%)

Memory
9.9MiB live, 9.9MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x x)
accuracy0
(*.f64 x #s(literal 2 binary64))
accuracy1.5976562500000002
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
accuracy2.8554584291510294
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
Samples
14.0ms256×0valid
Compiler

Compiled 80 to 20 computations (75% saved)

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

series8.0ms (0.3%)

Memory
4.0MiB live, 4.0MiB allocated
Counts
5 → 96
Calls
Call 1
Inputs
#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())
#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())
#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (pow x 2) (taylor 0 y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (patch (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) (patch (+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) y) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify82.0ms (3.4%)

Memory
22.0MiB live, 22.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056588
1166546
2470546
31334534
43275534
56426534
08157486
Stop Event
iter limit
node limit
Counts
96 → 96
Calls
Call 1
Inputs
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* 2 (* x y)) (pow x 2))
(+ (* 2 (* x y)) (pow x 2))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* x (+ x (* 2 y)))
(* x (+ x (* 2 y)))
(* x (+ x (* 2 y)))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
Outputs
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x y) y (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)

rewrite129.0ms (5.3%)

Memory
47.2MiB live, 47.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0933
01533
15029
242029
3635729
0821926
Stop Event
iter limit
node limit
iter limit
Counts
5 → 210
Calls
Call 1
Inputs
(+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y))
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
(*.f64 x x)
(*.f64 (*.f64 x #s(literal 2 binary64)) y)
(*.f64 x #s(literal 2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval26.0ms (1.1%)

Memory
24.2MiB live, 24.2MiB allocated
Compiler

Compiled 7 504 to 646 computations (91.4% saved)

prune7.0ms (0.3%)

Memory
14.3MiB live, 14.3MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New3015306
Fresh000
Picked101
Done000
Total3025307
Accuracy
100.0%
Counts
307 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.9%
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
55.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
60.4%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
60.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
57.3%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
Compiler

Compiled 62 to 52 computations (16.1% saved)

simplify4.0ms (0.2%)

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

Found 13 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 y #s(literal 2 binary64) x)
cost-diff0
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
cost-diff0
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
cost-diff0
(fma.f64 #s(literal 2 binary64) x y)
cost-diff0
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
cost-diff0
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
cost-diff0
(*.f64 y y)
cost-diff0
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
cost-diff0
(*.f64 x x)
cost-diff0
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
cost-diff0
(fma.f64 y #s(literal 2 binary64) x)
cost-diff0
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
cost-diff0
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020130
029130
143114
258114
361114
061114
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
y
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(fma.f64 y #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
(*.f64 x x)
x
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
(*.f64 y y)
y
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(fma.f64 #s(literal 2 binary64) x y)
#s(literal 2 binary64)
x
y
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(fma.f64 y #s(literal 2 binary64) x)
y
#s(literal 2 binary64)
x
Outputs
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
(fma.f64 y y (*.f64 (fma.f64 #s(literal 2 binary64) y x) x))
y
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(*.f64 (fma.f64 #s(literal 2 binary64) y x) x)
(fma.f64 y #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) y x)
#s(literal 2 binary64)
x
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
(*.f64 x x)
x
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
(*.f64 y y)
y
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 x #s(literal 2 binary64) y) y))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(fma.f64 #s(literal 2 binary64) x y)
(fma.f64 x #s(literal 2 binary64) y)
#s(literal 2 binary64)
x
y
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) y x) x))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(*.f64 (fma.f64 #s(literal 2 binary64) y x) x)
(fma.f64 y #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) y x)
y
#s(literal 2 binary64)
x

localize37.0ms (1.5%)

Memory
17.2MiB live, 17.2MiB allocated
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 y #s(literal 2 binary64) x)
accuracy0.01171875
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
accuracy28.250817284746727
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
accuracy0
(fma.f64 #s(literal 2 binary64) x y)
accuracy0
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
accuracy25.344617736643983
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
accuracy0
(*.f64 y y)
accuracy24.99890573303228
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
accuracy0
(*.f64 x x)
accuracy27.31042514841954
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
accuracy0
(fma.f64 y #s(literal 2 binary64) x)
accuracy0.01171875
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
accuracy1.999977980844482
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
Samples
26.0ms256×0valid
Compiler

Compiled 196 to 32 computations (83.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 11.0ms (69% of total)
ival-add: 5.0ms (31.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.5%)

Memory
6.5MiB live, 6.5MiB allocated
Counts
11 → 240
Calls
Call 1
Inputs
#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())
#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())
Outputs
#s(alt (pow x 2) (taylor 0 y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (/ (pow x 2) y))) (taylor inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y))))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 2))) (taylor -inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 2))) (taylor -inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 2))) (taylor -inf y) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 (/ x y)) 1))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 (/ x y)) 1))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 (/ x y)) 1))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ x (* 2 y))) (taylor 0 x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 2 y)) (taylor 0 x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* 2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 2 (/ y x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 2 (/ y x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 2 (/ y x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) (patch (*.f64 (fma.f64 y #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 (/ y x)) 1))) (taylor -inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 (/ y x)) 1))) (taylor -inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 (/ y x)) 1))) (taylor -inf x) (#s(alt (fma.f64 y #s(literal 2 binary64) x) (patch (fma.f64 y #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) (patch (*.f64 (fma.f64 #s(literal 2 binary64) x y) y) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 2))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 2))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 2))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 2 binary64) x y) (patch (fma.f64 #s(literal 2 binary64) x y) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify96.0ms (4%)

Memory
27.3MiB live, 27.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821602
12691536
27451536
321891536
445851536
575411536
080061314
Stop Event
iter limit
node limit
Counts
240 → 234
Calls
Call 1
Inputs
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* 2 (* x y)) (pow x 2))
(+ (* 2 (* x y)) (pow x 2))
x
(+ x (* 2 y))
(+ x (* 2 y))
(+ x (* 2 y))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(* 2 (* x y))
(* y (+ y (* 2 x)))
(* y (+ y (* 2 x)))
(* y (+ y (* 2 x)))
(* 2 x)
(+ y (* 2 x))
(+ y (* 2 x))
(+ y (* 2 x))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* 2 (* x y))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(* 2 y)
(* y (+ 2 (/ x y)))
(* y (+ 2 (/ x y)))
(* y (+ 2 (/ x y)))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
y
(* y (+ 1 (* 2 (/ x y))))
(* y (+ 1 (* 2 (/ x y))))
(* y (+ 1 (* 2 (/ x y))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* 2 (* x y))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(* 2 y)
(* -1 (* y (- (* -1 (/ x y)) 2)))
(* -1 (* y (- (* -1 (/ x y)) 2)))
(* -1 (* y (- (* -1 (/ x y)) 2)))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
y
(* -1 (* y (- (* -2 (/ x y)) 1)))
(* -1 (* y (- (* -2 (/ x y)) 1)))
(* -1 (* y (- (* -2 (/ x y)) 1)))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(* 2 (* x y))
(* x (+ x (* 2 y)))
(* x (+ x (* 2 y)))
(* x (+ x (* 2 y)))
(* 2 y)
(+ x (* 2 y))
(+ x (* 2 y))
(+ x (* 2 y))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* 2 (* x y)) (pow y 2))
(+ (* 2 (* x y)) (pow y 2))
y
(+ y (* 2 x))
(+ y (* 2 x))
(+ y (* 2 x))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
x
(* x (+ 1 (* 2 (/ y x))))
(* x (+ 1 (* 2 (/ y x))))
(* x (+ 1 (* 2 (/ y x))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* 2 (* x y))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(* 2 x)
(* x (+ 2 (/ y x)))
(* x (+ 2 (/ y x)))
(* x (+ 2 (/ y x)))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* 2 (/ y x))))
x
(* -1 (* x (- (* -2 (/ y x)) 1)))
(* -1 (* x (- (* -2 (/ y x)) 1)))
(* -1 (* x (- (* -2 (/ y x)) 1)))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* 2 (* x y))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(* 2 x)
(* -1 (* x (- (* -1 (/ y x)) 2)))
(* -1 (* x (- (* -1 (/ y x)) 2)))
(* -1 (* x (- (* -1 (/ y x)) 2)))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
Outputs
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
x
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* y (+ (* 2 x) (/ (pow x 2) y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* y (+ 2 (/ x y)))
(fma.f64 y #s(literal 2 binary64) x)
(* y (+ 2 (/ x y)))
(fma.f64 y #s(literal 2 binary64) x)
(* y (+ 2 (/ x y)))
(fma.f64 y #s(literal 2 binary64) x)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
y
(* y (+ 1 (* 2 (/ x y))))
(fma.f64 #s(literal 2 binary64) x y)
(* y (+ 1 (* 2 (/ x y))))
(fma.f64 #s(literal 2 binary64) x y)
(* y (+ 1 (* 2 (/ x y))))
(fma.f64 #s(literal 2 binary64) x y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* -1 (* y (+ (* -2 x) (* -1 (/ (pow x 2) y)))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(* -1 (* y (- (* -1 (/ x y)) 2)))
(fma.f64 y #s(literal 2 binary64) x)
(* -1 (* y (- (* -1 (/ x y)) 2)))
(fma.f64 y #s(literal 2 binary64) x)
(* -1 (* y (- (* -1 (/ x y)) 2)))
(fma.f64 y #s(literal 2 binary64) x)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
y
(* -1 (* y (- (* -2 (/ x y)) 1)))
(fma.f64 #s(literal 2 binary64) x y)
(* -1 (* y (- (* -2 (/ x y)) 1)))
(fma.f64 #s(literal 2 binary64) x y)
(* -1 (* y (- (* -2 (/ x y)) 1)))
(fma.f64 #s(literal 2 binary64) x y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* x (+ x (* 2 y)))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* 2 y)
(*.f64 y #s(literal 2 binary64))
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(+ x (* 2 y))
(fma.f64 y #s(literal 2 binary64) x)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
y
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(+ y (* 2 x))
(fma.f64 #s(literal 2 binary64) x y)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
x
(* x (+ 1 (* 2 (/ y x))))
(fma.f64 y #s(literal 2 binary64) x)
(* x (+ 1 (* 2 (/ y x))))
(fma.f64 y #s(literal 2 binary64) x)
(* x (+ 1 (* 2 (/ y x))))
(fma.f64 y #s(literal 2 binary64) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* x (+ 2 (/ y x)))
(fma.f64 #s(literal 2 binary64) x y)
(* x (+ 2 (/ y x)))
(fma.f64 #s(literal 2 binary64) x y)
(* x (+ 2 (/ y x)))
(fma.f64 #s(literal 2 binary64) x y)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
x
(* -1 (* x (- (* -2 (/ y x)) 1)))
(fma.f64 y #s(literal 2 binary64) x)
(* -1 (* x (- (* -2 (/ y x)) 1)))
(fma.f64 y #s(literal 2 binary64) x)
(* -1 (* x (- (* -2 (/ y x)) 1)))
(fma.f64 y #s(literal 2 binary64) x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* -1 (* x (- (* -1 (/ y x)) 2)))
(fma.f64 #s(literal 2 binary64) x y)
(* -1 (* x (- (* -1 (/ y x)) 2)))
(fma.f64 #s(literal 2 binary64) x y)
(* -1 (* x (- (* -1 (/ y x)) 2)))
(fma.f64 #s(literal 2 binary64) x y)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))

rewrite170.0ms (7%)

Memory
60.8MiB live, 60.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020109
029109
110293
285793
0833393
Stop Event
iter limit
node limit
iter limit
Counts
11 → 353
Calls
Call 1
Inputs
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(fma.f64 y #s(literal 2 binary64) x)
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
(*.f64 x x)
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
(*.f64 y y)
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(fma.f64 #s(literal 2 binary64) x y)
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval87.0ms (3.6%)

Memory
58.1MiB live, 58.1MiB allocated
Compiler

Compiled 13 467 to 1 209 computations (91% saved)

prune30.0ms (1.3%)

Memory
31.5MiB live, 31.5MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New7481749
Fresh000
Picked055
Done000
Total7486754
Accuracy
100.0%
Counts
754 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.9%
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
57.3%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
55.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
60.4%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
60.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
57.3%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
Compiler

Compiled 40 to 33 computations (17.5% saved)

simplify4.0ms (0.1%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 y y)
cost-diff0
(*.f64 y x)
cost-diff0
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
cost-diff320
(fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01339
01738
13035
24835
35135
05131
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
(fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))
(*.f64 y x)
y
x
#s(literal 2 binary64)
(*.f64 y y)
Outputs
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
(fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))
(*.f64 (fma.f64 #s(literal 2 binary64) x y) y)
(*.f64 y x)
(*.f64 x y)
y
x
#s(literal 2 binary64)
(*.f64 y y)

localize30.0ms (1.2%)

Memory
11.0MiB live, 11.0MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 y y)
accuracy0
(*.f64 y x)
accuracy2.3476500574906174
(fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))
accuracy25.344617736643983
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
Samples
22.0ms256×0valid
Compiler

Compiled 59 to 21 computations (64.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 10.0ms (73.2% of total)
ival-add: 3.0ms (21.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.2%)

Memory
3.0MiB live, 3.0MiB allocated
Counts
4 → 84
Calls
Call 1
Inputs
#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())
Outputs
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ y (* 2 x))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ y (* 2 x))) (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y)))) (taylor -inf y) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ x (* 2 y))) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (/ (pow y 2) x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) (patch (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* 2 (/ y x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x)))) (taylor -inf x) (#s(alt #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) (patch #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify89.0ms (3.7%)

Memory
21.5MiB live, 21.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056456
1165450
2471450
31340450
43287450
56444450
08183402
Stop Event
iter limit
node limit
Counts
84 → 84
Calls
Call 1
Inputs
(* 2 (* x y))
(* y (+ y (* 2 x)))
(* y (+ y (* 2 x)))
(* y (+ y (* 2 x)))
(pow x 2)
(+ (* 2 (* x y)) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(+ (* y (+ y (* 2 x))) (pow x 2))
(* x y)
(* x y)
(* x y)
(* x y)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(* x y)
(* x y)
(* x y)
(* x y)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(pow y 2)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(* x y)
(* x y)
(* x y)
(* x y)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* 2 (* x y)) (pow y 2))
(+ (* 2 (* x y)) (pow y 2))
(pow y 2)
(+ (* 2 (* x y)) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(+ (* x (+ x (* 2 y))) (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(* 2 (* x y))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* 2 (* x y))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(pow x 2)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* y (+ y (* 2 x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow x 2)
(*.f64 x x)
(+ (* 2 (* x y)) (pow x 2))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* y (+ y (* 2 x))) (pow x 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (+ (* 2 (/ x y)) (/ (pow x 2) (pow y 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* 2 (/ x y))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (+ (* -2 x) (* -1 (/ (pow x 2) y))) y))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow y 2)
(*.f64 y y)
(+ (* 2 (* x y)) (pow y 2))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(+ (* x (+ x (* 2 y))) (pow y 2))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* x (+ (* 2 y) (/ (pow y 2) x)))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (+ (* 2 (/ y x)) (/ (pow y 2) (pow x 2)))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(* -1 (* x (+ (* -2 y) (* -1 (/ (pow y 2) x)))))
(*.f64 (fma.f64 x #s(literal 2 binary64) y) y)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (+ 1 (* 2 (/ y x))))
(*.f64 (fma.f64 y #s(literal 2 binary64) x) x)
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* (pow x 2) (+ 1 (* -1 (/ (+ (* -2 y) (* -1 (/ (pow y 2) x))) x))))
(fma.f64 (fma.f64 y #s(literal 2 binary64) x) x (*.f64 y y))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite134.0ms (5.5%)

Memory
45.3MiB live, 45.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01336
01735
17232
255032
0820628
Stop Event
iter limit
node limit
iter limit
Counts
4 → 111
Calls
Call 1
Inputs
(fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
(*.f64 y x)
(*.f64 y y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval24.0ms (1%)

Memory
15.7MiB live, 15.7MiB allocated
Compiler

Compiled 3 819 to 441 computations (88.5% saved)

prune10.0ms (0.4%)

Memory
10.3MiB live, 10.3MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New1950195
Fresh000
Picked011
Done055
Total1956201
Accuracy
100.0%
Counts
201 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.9%
(fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
57.3%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y)))
55.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 y #s(literal 2 binary64) x) x))
60.4%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y))
60.9%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y))
57.3%
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
Compiler

Compiled 93 to 54 computations (41.9% saved)

regimes10.0ms (0.4%)

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

3 calls:

3.0ms
y
3.0ms
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
3.0ms
x
Results
AccuracySegmentsBranch
98.8%2x
100.0%2y
98.9%2(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
Compiler

Compiled 15 to 13 computations (13.3% saved)

regimes9.0ms (0.4%)

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

3 calls:

3.0ms
y
3.0ms
x
3.0ms
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
Results
AccuracySegmentsBranch
89.0%2x
63.2%2(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
87.6%2y
Compiler

Compiled 15 to 13 computations (13.3% saved)

regimes3.0ms (0.1%)

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

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
89.0%2x
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes2.0ms (0.1%)

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

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
88.8%2x
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes5.0ms (0.2%)

Memory
4.3MiB live, 4.3MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

3 calls:

2.0ms
y
2.0ms
x
2.0ms
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
Results
AccuracySegmentsBranch
57.3%1(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x #s(literal 2 binary64)) y)) (*.f64 y y))
57.3%1y
57.3%1x
Compiler

Compiled 15 to 13 computations (13.3% saved)

bsearch2.0ms (0.1%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
binary-search
Stop Event
predicate-same
Steps
TimeLeftRight
2.0ms
7.76951726027665e+151
4.773515681727775e+158
Samples
1.0ms16×0valid
Compiler

Compiled 29 to 26 computations (10.3% saved)

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

bsearch15.0ms (0.6%)

Memory
4.5MiB live, 4.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
-1.0674704107050588e-125
-2.2073516525515535e-129
Samples
8.0ms128×0valid
Compiler

Compiled 120 to 118 computations (1.7% saved)

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

bsearch1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-1.0674704107050588e-125
-2.2073516525515535e-129
Compiler

Compiled 104 to 110 computations (-5.8% saved)

bsearch13.0ms (0.5%)

Memory
4.0MiB live, 4.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
11.0ms
-1.0674704107050588e-125
-2.2073516525515535e-129
Samples
7.0ms112×0valid
Compiler

Compiled 80 to 94 computations (-17.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 3.0ms (71.2% of total)
ival-add: 1.0ms (23.7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify28.0ms (1.2%)

Memory
18.7MiB live, 18.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032169
135169
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 y #s(literal 100000000000000004625108135904199474001226272395072688491888727201272553753779650923383419882203425131989662450489690590919397689516441796634752009109504 binary64)) (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)))
(if (<=.f64 x #s(literal -4001264621376699/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))))
(if (<=.f64 x #s(literal -4001264621376699/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)))
(if (<=.f64 x #s(literal -7316598164803107/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))
Outputs
(if (<=.f64 y #s(literal 100000000000000004625108135904199474001226272395072688491888727201272553753779650923383419882203425131989662450489690590919397689516441796634752009109504 binary64)) (fma.f64 y y (*.f64 (fma.f64 y #s(literal 2 binary64) x) x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)))
(if (<=.f64 x #s(literal -4001264621376699/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 y x) #s(literal 2 binary64) (*.f64 y y))))
(if (<=.f64 x #s(literal -4001264621376699/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (fma.f64 (*.f64 x y) #s(literal 2 binary64) (*.f64 y y))))
(if (<=.f64 x #s(literal -4001264621376699/381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 (fma.f64 #s(literal 2 binary64) x y) y)))
(if (<=.f64 x #s(literal -7316598164803107/48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784 binary64)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x)) #s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 y y)))
#s(approx (+ (+ (* x x) (* (* x 2) y)) (* y y)) (*.f64 x x))

soundness495.0ms (20.4%)

Memory
5.6MiB live, 5.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056588
1166546
2470546
31334534
43275534
56426534
08157486
020109
029109
110293
285793
0833393
0933
01533
15029
242029
3635729
0821926
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 136 to 73 computations (46.3% saved)

preprocess68.0ms (2.8%)

Memory
47.5MiB live, 47.5MiB allocated
Compiler

Compiled 216 to 110 computations (49.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...