Data.Histogram.Bin.BinF:$cfromIndex from histogram-fill-0.8.4.1

Time bar (total: 3.5s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample688.0ms (19.7%)

Memory
8.0MiB live, 1 437.8MiB allocated
Samples
449.0ms8 254×0valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 238.0ms
ival-add: 84.0ms (35.3% of total)
ival-mult: 77.0ms (32.4% of total)
ival-div: 63.0ms (26.5% of total)
ival-true: 6.0ms (2.5% of total)
exact: 5.0ms (2.1% of total)
ival-assert: 4.0ms (1.7% of total)
adjust: 0.0ms (0% of total)
Bogosity

explain85.0ms (2.4%)

Memory
-4.3MiB live, 154.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
00-0-#s(literal 2 binary64)
00-0-y
00-0-(/.f64 x #s(literal 2 binary64))
00-0-z
00-0-(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
00-0-(*.f64 y x)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
29.0ms512×0valid
Compiler

Compiled 91 to 36 computations (60.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-add: 5.0ms (38% of total)
ival-mult: 4.0ms (30.4% of total)
ival-div: 3.0ms (22.8% of total)
ival-true: 1.0ms (7.6% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess71.0ms (2%)

Memory
-9.7MiB live, 28.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03288
18882
223281
366269
4116665
5171463
6219063
7237663
8242463
9243263
10243263
089
0129
1179
2249
3269
0268
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
Outputs
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
(+.f64 z (fma.f64 y x (/.f64 x #s(literal 2 binary64))))
Compiler

Compiled 9 to 8 computations (11.1% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 9 to 8 computations (11.1% saved)

simplify3.0ms (0.1%)

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

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0826
01226
11726
22426
32626
02624
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
(/.f64 x #s(literal 2 binary64))
x
#s(literal 2 binary64)
(*.f64 y x)
y
z
Outputs
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
(+.f64 z (fma.f64 y x (/.f64 x #s(literal 2 binary64))))
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
(fma.f64 y x (/.f64 x #s(literal 2 binary64)))
(/.f64 x #s(literal 2 binary64))
x
#s(literal 2 binary64)
(*.f64 y x)
y
z

localize21.0ms (0.6%)

Memory
-3.4MiB live, 35.1MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 x #s(literal 2 binary64))
accuracy0
(*.f64 y x)
accuracy0.00390625
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
accuracy0.0078125
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
Samples
15.0ms256×0valid
Compiler

Compiled 54 to 18 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 3.0ms (39% of total)
ival-div: 2.0ms (26% of total)
ival-add: 2.0ms (26% 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.2%)

Memory
17.4MiB live, 17.4MiB allocated
Counts
4 → 96
Calls
Call 1
Inputs
#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())
#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())
#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
Outputs
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<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 (* x y) (taylor inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<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 (* x y) (taylor -inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<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 (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<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 (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<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 (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) (patch (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) (patch (+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 2 binary64)) (patch (/.f64 x #s(literal 2 binary64)) #<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

9 calls:

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

simplify101.0ms (2.9%)

Memory
-21.1MiB live, 98.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057440
1174440
2488440
31308440
43609440
56674440
08210412
Stop Event
iter limit
node limit
Counts
96 → 93
Calls
Call 1
Inputs
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* 1/2 x)
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (* 1/2 x))
(fma.f64 x #s(literal 1/2 binary64) z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite171.0ms (4.9%)

Memory
22.4MiB live, 211.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0822
01222
15218
245218
3607718
0804017
Stop Event
iter limit
node limit
iter limit
Counts
4 → 242
Calls
Call 1
Inputs
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
(/.f64 x #s(literal 2 binary64))
(*.f64 y 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>

eval54.0ms (1.5%)

Memory
-6.9MiB live, 78.5MiB allocated
Compiler

Compiled 6 518 to 757 computations (88.4% saved)

prune7.0ms (0.2%)

Memory
20.0MiB live, 20.0MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New3305335
Fresh000
Picked101
Done000
Total3315336
Accuracy
100.0%
Counts
336 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
75.1%
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
62.7%
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
63.2%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
39.6%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
Compiler

Compiled 54 to 60 computations (-11.1% saved)

simplify17.0ms (0.5%)

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

Found 12 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
021108
030108
144108
253108
359108
059103
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
(+.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
z
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
(fma.f64 x #s(literal 1/2 binary64) z)
x
#s(literal 1/2 binary64)
z
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(-.f64 y #s(literal -1/2 binary64))
y
#s(literal -1/2 binary64)
x
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
#s(approx (+ (/ x 2) (* y x)) (*.f64 y x))
(*.f64 y x)
y
x
z
Outputs
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
(fma.f64 x (-.f64 y #s(literal -1/2 binary64)) z)
(+.f64 #s(literal 1/2 binary64) y)
(-.f64 y #s(literal -1/2 binary64))
#s(literal 1/2 binary64)
y
x
z
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
y
x
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
(fma.f64 x #s(literal 1/2 binary64) z)
x
#s(literal 1/2 binary64)
z
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x (-.f64 y #s(literal -1/2 binary64))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(*.f64 x (-.f64 y #s(literal -1/2 binary64)))
(-.f64 y #s(literal -1/2 binary64))
y
#s(literal -1/2 binary64)
x
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 x y)) z)
#s(approx (+ (/ x 2) (* y x)) (*.f64 y x))
#s(approx (+ (/ x 2) (* y x)) (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
y
x
z

localize45.0ms (1.3%)

Memory
12.6MiB live, 48.7MiB allocated
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 y x)
accuracy0.00390625
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
accuracy30.401755032472447
#s(approx (+ (/ x 2) (* y x)) (*.f64 y x))
accuracy0
(-.f64 y #s(literal -1/2 binary64))
accuracy0.0078125
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
accuracy23.572286013714475
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
accuracy0
(fma.f64 x #s(literal 1/2 binary64) z)
accuracy23.841283155498
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
accuracy0
(*.f64 y x)
accuracy38.67927767651837
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
accuracy0
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
accuracy0
(+.f64 #s(literal 1/2 binary64) y)
Samples
34.0ms256×0valid
Compiler

Compiled 156 to 35 computations (77.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
ival-mult: 12.0ms (56.7% of total)
ival-add: 6.0ms (28.3% of total)
ival-div: 2.0ms (9.4% of total)
ival-sub: 1.0ms (4.7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series14.0ms (0.4%)

Memory
22.1MiB live, 22.1MiB allocated
Counts
11 → 300
Calls
Call 1
Inputs
#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())
#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())
#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())
#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())
#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())
#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())
#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())
Outputs
#s(alt (* x (+ 1/2 y)) (taylor 0 z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ (* x (+ 1/2 y)) z))) (taylor inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ (* x (+ 1/2 y)) z))) (taylor inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (/ (* x (+ 1/2 y)) z))) (taylor inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (* 1/2 (/ x z)))) (taylor inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (* 1/2 (/ x z)))) (taylor inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (* 1/2 (/ x z)))) (taylor inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1))) (taylor -inf z) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1/2 (/ x z)) 1))) (taylor -inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1/2 (/ x z)) 1))) (taylor -inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1/2 (/ x z)) 1))) (taylor -inf z) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* 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 #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1/2 binary64) y) (patch (+.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* 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 #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (-.f64 y #s(literal -1/2 binary64)) (patch (-.f64 y #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ z x))) (taylor inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ z x))) (taylor inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ z x))) (taylor inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) (patch (fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.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 (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ z x)) 1/2))) (taylor -inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ z x)) 1/2))) (taylor -inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ z x)) 1/2))) (taylor -inf x) (#s(alt (fma.f64 x #s(literal 1/2 binary64) z) (patch (fma.f64 x #s(literal 1/2 binary64) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) (patch (*.f64 (-.f64 y #s(literal -1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (patch (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) (patch #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify145.0ms (4.1%)

Memory
-26.0MiB live, 90.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0831552
12701552
27231552
320151552
441641552
562461552
675521552
080541394
Stop Event
iter limit
node limit
Counts
300 → 278
Calls
Call 1
Inputs
(* x (+ 1/2 y))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* 1/2 x)
(+ z (* 1/2 x))
(+ z (* 1/2 x))
(+ z (* 1/2 x))
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
z
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* z (+ 1 (* 1/2 (/ x z))))
(* z (+ 1 (* 1/2 (/ x z))))
(* z (+ 1 (* 1/2 (/ x z))))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
z
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
1/2
(+ 1/2 y)
(+ 1/2 y)
(+ 1/2 y)
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* x y)
(* x y)
(* x y)
(* x y)
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* 1/2 x)
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
1/2
(+ 1/2 y)
(+ 1/2 y)
(+ 1/2 y)
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* 1/2 x)
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(* x y)
(* x y)
(* x y)
(* x y)
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
z
(+ z (* 1/2 x))
(+ z (* 1/2 x))
(+ z (* 1/2 x))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* 1/2 x)
(* x (+ 1/2 (/ z x)))
(* x (+ 1/2 (/ z x)))
(* x (+ 1/2 (/ z x)))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* 1/2 x)
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (* -1 y) 1/2)))
Outputs
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (/ (* x (+ 1/2 y)) z)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (* 1/2 (/ x z))))
(fma.f64 #s(literal 1/2 binary64) x z)
(* z (+ 1 (* 1/2 (/ x z))))
(fma.f64 #s(literal 1/2 binary64) x z)
(* z (+ 1 (* 1/2 (/ x z))))
(fma.f64 #s(literal 1/2 binary64) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (* x (+ 1/2 y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* -1 (* z (- (* -1/2 (/ x z)) 1)))
(fma.f64 #s(literal 1/2 binary64) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
1/2
#s(literal 1/2 binary64)
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
(+ z (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x z)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(* x (+ 1/2 (/ z x)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* x (+ 1/2 (/ z x)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* x (+ 1/2 (/ z x)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (+ (* -1 (+ 1/2 y)) (* -1 (/ z x)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* -1 (* x (- (* -1 (/ z x)) 1/2)))
(fma.f64 #s(literal 1/2 binary64) x z)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)

rewrite203.0ms (5.8%)

Memory
17.9MiB live, 208.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02190
03090
113677
2103977
0871777
Stop Event
iter limit
node limit
iter limit
Counts
11 → 380
Calls
Call 1
Inputs
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
(+.f64 #s(literal 1/2 binary64) y)
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
(*.f64 y x)
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
(fma.f64 x #s(literal 1/2 binary64) z)
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(-.f64 y #s(literal -1/2 binary64))
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
#s(approx (+ (/ x 2) (* y x)) (*.f64 y 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval82.0ms (2.3%)

Memory
-13.2MiB live, 191.4MiB allocated
Compiler

Compiled 9 931 to 1 103 computations (88.9% saved)

prune32.0ms (0.9%)

Memory
22.4MiB live, 61.5MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New6851686
Fresh000
Picked055
Done000
Total6856691
Accuracy
100.0%
Counts
691 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
75.1%
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
62.7%
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
63.2%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
26.3%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
39.6%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
Compiler

Compiled 32 to 37 computations (-15.6% saved)

simplify4.0ms (0.1%)

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

Found 3 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
01531
12331
23131
33331
03330
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
(*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)
#s(approx (- y -1/2) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
x
Outputs
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x #s(approx (- y -1/2) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)
(*.f64 x #s(approx (- y -1/2) #s(literal 1/2 binary64)))
#s(approx (- y -1/2) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
x

localize26.0ms (0.7%)

Memory
1.6MiB live, 38.6MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)
accuracy23.572286013714475
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
accuracy33.00357636812621
#s(approx (- y -1/2) #s(literal 1/2 binary64))
Samples
16.0ms256×0valid
Compiler

Compiled 34 to 21 computations (38.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 3.0ms (33.5% of total)
ival-div: 2.0ms (22.3% of total)
ival-add: 2.0ms (22.3% of total)
ival-sub: 1.0ms (11.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.3%)

Memory
-27.6MiB live, 10.0MiB allocated
Counts
3 → 72
Calls
Call 1
Inputs
#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())
#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt z (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z)))) (taylor inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt z (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1))) (taylor -inf z) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* 1/2 x)) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (+ (* 1/2 x) (* x y))) (taylor 0 y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 x) (* x y)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 y) (taylor 0 y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (+ (* 1/2 (/ x y)) (/ z y)))) (taylor inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* 1/2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y))))) (taylor -inf y) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (* -1/2 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- y -1/2) #s(literal 1/2 binary64)) (patch #s(approx (- y -1/2) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt z (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ z (* x (+ 1/2 y))) (taylor 0 x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (+ y (/ z x)))) (taylor inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2))) (taylor -inf x) (#s(alt #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) (patch #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) (patch (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x) #<representation binary64>) () ())) ())
Calls

9 calls:

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

simplify166.0ms (4.8%)

Memory
17.9MiB live, 137.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061362
1189362
2515362
31566362
43483362
56324362
08421334
Stop Event
iter limit
node limit
Counts
72 → 67
Calls
Call 1
Inputs
(+ (* 1/2 x) (* x y))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(+ z (* 1/2 x))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(+ z (+ (* 1/2 x) (* x y)))
(* 1/2 x)
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
(+ (* 1/2 x) (* x y))
1/2
(+ 1/2 y)
(+ 1/2 y)
(+ 1/2 y)
(* x y)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(* x y)
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
(* y (+ x (* 1/2 (/ x y))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(* x y)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
(* y (+ 1 (* 1/2 (/ 1 y))))
z
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(+ z (* x (+ 1/2 y)))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 (+ y (/ z x))))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* -1 (* x (- (* -1 y) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
(* x (+ 1/2 y))
Outputs
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* z (+ 1 (+ (* 1/2 (/ x z)) (/ (* x y) z))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
z
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* z (- (* -1 (/ (+ (* 1/2 x) (* x y)) z)) 1)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* 1/2 x))
(fma.f64 x #s(literal 1/2 binary64) z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (+ (* 1/2 x) (* x y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(+ (* 1/2 x) (* x y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(+ 1/2 y)
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* y (+ x (+ (* 1/2 (/ x y)) (/ z y))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* y (+ x (* 1/2 (/ x y))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* y (+ (* -1 x) (* -1 (/ (+ z (* 1/2 x)) y)))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* y (+ (* -1 x) (* -1/2 (/ x y)))))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
y
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
(* y (+ 1 (* 1/2 (/ 1 y))))
(-.f64 y #s(literal -1/2 binary64))
z
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(+ z (* x (+ 1/2 y)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 (+ y (/ z x))))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (* -1 y) 1/2)))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* -1 (* x (- (+ (* -1 y) (* -1 (/ z x))) 1/2)))
(fma.f64 (-.f64 y #s(literal -1/2 binary64)) x z)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)
(* x (+ 1/2 y))
(*.f64 (-.f64 y #s(literal -1/2 binary64)) x)

rewrite233.0ms (6.7%)

Memory
-7.1MiB live, 218.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01429
01529
17127
256127
3690027
0817426
Stop Event
iter limit
node limit
iter limit
Counts
3 → 4
Calls
Call 1
Inputs
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
(*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)
#s(approx (- y -1/2) #s(literal 1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval45.0ms (1.3%)

Memory
-20.7MiB live, 30.1MiB allocated
Compiler

Compiled 470 to 29 computations (93.8% saved)

prune23.0ms (0.7%)

Memory
-24.7MiB live, 12.6MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New71071
Fresh000
Picked011
Done055
Total71677
Accuracy
100.0%
Counts
77 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
75.1%
(+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)
62.7%
#s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z))
63.2%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))
26.3%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x))
39.6%
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
Compiler

Compiled 73 to 60 computations (17.8% saved)

regimes18.0ms (0.5%)

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

5 calls:

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

Compiled 19 to 24 computations (-26.3% saved)

regimes13.0ms (0.4%)

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

5 calls:

2.0ms
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
2.0ms
x
2.0ms
z
2.0ms
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
2.0ms
y
Results
AccuracySegmentsBranch
88.9%3x
99.5%3y
90.5%4z
79.1%3(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
86.9%3(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
Compiler

Compiled 19 to 24 computations (-26.3% saved)

regimes10.0ms (0.3%)

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

3 calls:

5.0ms
y
2.0ms
z
2.0ms
x
Results
AccuracySegmentsBranch
82.0%3x
83.4%3z
88.0%3y
Compiler

Compiled 3 to 9 computations (-200% saved)

regimes2.0ms (0.1%)

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

1 calls:

2.0ms
y
Results
AccuracySegmentsBranch
87.6%3y
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes8.0ms (0.2%)

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

5 calls:

2.0ms
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
2.0ms
y
2.0ms
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
2.0ms
x
2.0ms
z
Results
AccuracySegmentsBranch
42.9%3(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
39.6%1x
39.6%1z
42.9%3(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
62.8%3y
Compiler

Compiled 19 to 24 computations (-26.3% saved)

regimes41.0ms (1.2%)

Memory
-39.8MiB live, 7.1MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

3 calls:

37.0ms
y
1.0ms
(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
1.0ms
(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
Results
AccuracySegmentsBranch
39.6%1(+.f64 (+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x)) z)
39.6%1(+.f64 (/.f64 x #s(literal 2 binary64)) (*.f64 y x))
39.6%1y
Compiler

Compiled 17 to 18 computations (-5.9% saved)

bsearch27.0ms (0.8%)

Memory
24.5MiB live, 24.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
3.7517962678237732e-31
4.396881461029559e-20
11.0ms
-10462269.086784096
-498.623750776431
Samples
13.0ms288×0valid
Compiler

Compiled 210 to 266 computations (-26.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-add: 3.0ms (43.5% of total)
ival-div: 2.0ms (29% of total)
ival-mult: 2.0ms (29% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch152.0ms (4.4%)

Memory
-17.2MiB live, 21.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
141.0ms
7.087048085872239e-7
1502390322774.4143
8.0ms
-10462269.086784096
-498.623750776431
Samples
139.0ms256×0valid
Compiler

Compiled 210 to 284 computations (-35.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 134.0ms
ival-mult: 129.0ms (96.5% of total)
ival-div: 2.0ms (1.5% of total)
ival-add: 2.0ms (1.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch21.0ms (0.6%)

Memory
26.4MiB live, 26.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
7.087048085872239e-7
1502390322774.4143
9.0ms
-10462269.086784096
-498.623750776431
Samples
10.0ms224×0valid
Compiler

Compiled 174 to 248 computations (-42.5% saved)

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

bsearch41.0ms (1.2%)

Memory
4.1MiB live, 41.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
12.0ms
4.409010488462256e-13
7.087048085872239e-7
27.0ms
-2.896245816662132
-1.5569954142997304
Samples
31.0ms208×0valid
Compiler

Compiled 129 to 196 computations (-51.9% saved)

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

simplify34.0ms (1%)

Memory
-27.8MiB live, 49.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049218
156218
261218
363218
464218
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
(if (<=.f64 y #s(literal -500 binary64)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (if (<=.f64 y #s(literal 7144600477343923/166153499473114484112975882535043072 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)))
(if (<=.f64 y #s(literal -12000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (if (<=.f64 y #s(literal 105000000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))))
(if (<=.f64 y #s(literal -4600000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (if (<=.f64 y #s(literal 70000000000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))))
(if (<=.f64 y #s(literal -3602879701896397/2251799813685248 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (if (<=.f64 y #s(literal 6611313076017503/9444732965739290427392 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
Outputs
(fma.f64 (+.f64 #s(literal 1/2 binary64) y) x z)
(fma.f64 (+.f64 y #s(literal 1/2 binary64)) x z)
(if (<=.f64 y #s(literal -500 binary64)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z) (if (<=.f64 y #s(literal 7144600477343923/166153499473114484112975882535043072 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 y x)) z)))
(if (<=.f64 y #s(literal -500 binary64)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 x y)) z) (if (<=.f64 y #s(literal 7144600477343923/166153499473114484112975882535043072 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) (+.f64 #s(approx (+ (/ x 2) (* y x)) (*.f64 x y)) z)))
(if (<=.f64 y #s(literal -12000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x)) (if (<=.f64 y #s(literal 105000000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 (-.f64 y #s(literal -1/2 binary64)) x))))
(if (<=.f64 y #s(literal -4600000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (if (<=.f64 y #s(literal 70000000000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))))
(if (<=.f64 y #s(literal -4600000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y)) (if (<=.f64 y #s(literal 70000000000 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (fma.f64 x #s(literal 1/2 binary64) z)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y))))
(if (<=.f64 y #s(literal -3602879701896397/2251799813685248 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x)) (if (<=.f64 y #s(literal 6611313076017503/9444732965739290427392 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))))
(if (<=.f64 y #s(literal -3602879701896397/2251799813685248 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y)) (if (<=.f64 y #s(literal 6611313076017503/9444732965739290427392 binary64)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 #s(approx (- y -1/2) #s(literal 1/2 binary64)) x)) #s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y))))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 y x))
#s(approx (+ (+ (/ x 2) (* y x)) z) (*.f64 x y))

soundness748.0ms (21.4%)

Memory
4.8MiB live, 283.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057440
1174440
2488440
31308440
43609440
56674440
08210412
0822
01222
15218
245218
3607718
0804017
0831552
12701552
27231552
320151552
441641552
562461552
675521552
080541394
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 157 to 104 computations (33.8% saved)

preprocess122.0ms (3.5%)

Memory
-11.7MiB live, 113.8MiB allocated
Compiler

Compiled 222 to 102 computations (54.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...