Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2, A

Time bar (total: 4.8s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB 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 13 to 12 computations (7.7% saved)

sample869.0ms (18%)

Memory
8.1MiB live, 2 190.0MiB allocated
Samples
610.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 418.0ms
const: 146.0ms (35% of total)
ival-mult: 119.0ms (28.5% of total)
ival-sub: 95.0ms (22.8% of total)
ival-add: 38.0ms (9.1% of total)
exact: 9.0ms (2.2% of total)
ival-true: 6.0ms (1.4% of total)
ival-assert: 4.0ms (1% of total)
Bogosity

explain113.0ms (2.3%)

Memory
16.7MiB live, 292.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(-.f64 y #s(literal 1 binary64))
00-0-#s(literal 1 binary64)
00-0-(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
00-0-(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
00-0-#s(literal 918938533204673/1000000000000000 binary64)
00-0-(*.f64 x (-.f64 y #s(literal 1 binary64)))
00-0-y
00-0-(*.f64 y #s(literal 1/2 binary64))
00-0-#s(literal 1/2 binary64)
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
42.0ms510×0valid
0.0ms1valid
Compiler

Compiled 87 to 34 computations (60.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
const: 9.0ms (34.9% of total)
ival-mult: 7.0ms (27.1% of total)
ival-sub: 6.0ms (23.3% of total)
ival-add: 2.0ms (7.8% of total)
exact: 1.0ms (3.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess126.0ms (2.6%)

Memory
6.6MiB live, 102.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02461
17559
219655
361749
4151245
5280545
6339445
7351145
8353145
9353345
10353545
11355545
01011
01511
13011
25811
31169
42189
54479
68529
712529
814899
915109
015108
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Outputs
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
Compiler

Compiled 11 to 10 computations (9.1% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

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

Compiled 11 to 10 computations (9.1% saved)

simplify37.0ms (0.8%)

Memory
-3.0MiB live, 36.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01036
01536
13036
25836
311632
421832
544732
685232
7125232
8148932
9151032
0151031
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
(*.f64 x (-.f64 y #s(literal 1 binary64)))
x
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
(*.f64 y #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(literal 918938533204673/1000000000000000 binary64)
Outputs
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (neg.f64 x))
(*.f64 x (-.f64 y #s(literal 1 binary64)))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
x
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
(*.f64 y #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
#s(literal 918938533204673/1000000000000000 binary64)

localize36.0ms (0.7%)

Memory
5.0MiB live, 85.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
accuracy0
(*.f64 y #s(literal 1/2 binary64))
accuracy0.0078125
(*.f64 x (-.f64 y #s(literal 1 binary64)))
accuracy0.01171875
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
Samples
23.0ms255×0valid
0.0ms1valid
Compiler

Compiled 38 to 12 computations (68.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
const: 4.0ms (32.7% of total)
ival-mult: 3.0ms (24.5% of total)
ival-sub: 3.0ms (24.5% of total)
ival-add: 1.0ms (8.2% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series10.0ms (0.2%)

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

6 calls:

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

simplify119.0ms (2.5%)

Memory
-16.4MiB live, 179.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076582
1232520
2695520
31797520
46379520
08166501
Stop Event
iter limit
node limit
Counts
96 → 94
Calls
Call 1
Inputs
(* -1 x)
(+ (* -1 x) (* y (- x 1/2)))
(+ (* -1 x) (* y (- x 1/2)))
(+ (* -1 x) (* y (- x 1/2)))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(* -1 x)
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
-1
(- y 1)
(- y 1)
(- y 1)
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* y (- x 1/2))
(* y (- (+ x (* -1 (/ x y))) 1/2))
(* y (- (+ x (* -1 (/ x y))) 1/2))
(* y (- (+ x (* -1 (/ x y))) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* x y)
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
y
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* x y)
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
y
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* 1/2 y)
(* -1/2 y)
(- (* x (- y 1)) (* 1/2 y))
(- (* x (- y 1)) (* 1/2 y))
(- (* x (- y 1)) (* 1/2 y))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- (+ y (* -1/2 (/ y x))) 1))
(* x (- (+ y (* -1/2 (/ y x))) 1))
(* x (- (+ y (* -1/2 (/ y x))) 1))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
Outputs
(* -1 x)
(neg.f64 x)
(+ (* -1 x) (* y (- x 1/2)))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(+ (* -1 x) (* y (- x 1/2)))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(+ (* -1 x) (* y (- x 1/2)))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 x)
(neg.f64 x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
-1
#s(literal -1 binary64)
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (* -1 (/ x y))) 1/2))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* y (- (+ x (* -1 (/ x y))) 1/2))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* y (- (+ x (* -1 (/ x y))) 1/2))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x y)
(*.f64 y x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
y
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (/ x y)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
y
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(- (* x (- y 1)) (* 1/2 y))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(- (* x (- y 1)) (* 1/2 y))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(- (* x (- y 1)) (* 1/2 y))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* -1/2 (/ y x))) 1))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- (+ y (* -1/2 (/ y x))) 1))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- (+ y (* -1/2 (/ y x))) 1))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* x (+ (* -1 (- y 1)) (* 1/2 (/ y x)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)

rewrite178.0ms (3.7%)

Memory
46.4MiB live, 239.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01031
01531
16931
252031
3772031
0824928
Stop Event
iter limit
node limit
iter limit
Counts
5 → 384
Calls
Call 1
Inputs
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
(*.f64 x (-.f64 y #s(literal 1 binary64)))
(-.f64 y #s(literal 1 binary64))
(*.f64 y #s(literal 1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval92.0ms (1.9%)

Memory
-40.5MiB live, 163.9MiB allocated
Compiler

Compiled 12 121 to 1 380 computations (88.6% saved)

prune11.0ms (0.2%)

Memory
34.2MiB live, 34.2MiB allocated
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New4726478
Fresh000
Picked101
Done000
Total4736479
Accuracy
100.0%
Counts
479 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
50.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
100.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
50.3%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
51.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
Compiler

Compiled 78 to 78 computations (0% saved)

simplify43.0ms (0.9%)

Memory
-15.9MiB live, 22.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 13 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
022120
030120
158112
288112
3159112
4295112
5572112
61035112
71448112
81588112
91600112
01600107
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
x
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
#s(literal 918938533204673/1000000000000000 binary64)
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
y
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(-.f64 x #s(literal 1/2 binary64))
x
#s(literal 1/2 binary64)
y
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
x
Outputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
x
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
#s(literal 918938533204673/1000000000000000 binary64)
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
y
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(-.f64 x #s(literal 1/2 binary64))
x
#s(literal 1/2 binary64)
y
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 x (-.f64 y #s(literal 1 binary64))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(*.f64 x (-.f64 y #s(literal 1 binary64)))
(-.f64 y #s(literal 1 binary64))
y
#s(literal 1 binary64)
x

localize60.0ms (1.2%)

Memory
-21.2MiB live, 100.3MiB allocated
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 y #s(literal 1 binary64))
accuracy0.0078125
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
accuracy31.344280562869137
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
accuracy0
(-.f64 x #s(literal 1/2 binary64))
accuracy0.015625
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
accuracy30.464544187389954
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
accuracy0
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
accuracy32.030490549960824
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
accuracy0
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
accuracy31.776142628942157
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
accuracy0
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
accuracy0
(-.f64 y #s(literal 1 binary64))
accuracy0.00390625
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
Samples
45.0ms256×0valid
Compiler

Compiled 105 to 20 computations (81% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-mult: 11.0ms (40.6% of total)
const: 7.0ms (25.8% of total)
ival-sub: 5.0ms (18.5% of total)
ival-add: 3.0ms (11.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series17.0ms (0.3%)

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

6 calls:

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

simplify112.0ms (2.3%)

Memory
5.0MiB live, 161.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0991456
13071321
28521321
322891321
466551321
080611217
Stop Event
iter limit
node limit
Counts
216 → 212
Calls
Call 1
Inputs
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
-1
(- y 1)
(- y 1)
(- y 1)
918938533204673/1000000000000000
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(* -1 x)
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
y
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* -1/2 y)
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 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 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* x y)
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
y
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* -1/2 y)
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* x y)
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
918938533204673/1000000000000000
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* -1/2 y)
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
-1/2
(- x 1/2)
(- x 1/2)
(- x 1/2)
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* -1 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x y)
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
x
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
x
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
Outputs
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
-1
#s(literal -1 binary64)
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
918938533204673/1000000000000000
#s(literal 918938533204673/1000000000000000 binary64)
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
y
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
y
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
918938533204673/1000000000000000
#s(literal 918938533204673/1000000000000000 binary64)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
-1/2
#s(literal -1/2 binary64)
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
x
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
x
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)

rewrite181.0ms (3.7%)

Memory
22.5MiB live, 258.0MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02297
03097
114689
2107689
0843689
Stop Event
iter limit
node limit
iter limit
Counts
11 → 426
Calls
Call 1
Inputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(-.f64 y #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(-.f64 x #s(literal 1/2 binary64))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
(*.f64 (-.f64 y #s(literal 1 binary64)) 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval96.0ms (2%)

Memory
-16.9MiB live, 186.7MiB allocated
Compiler

Compiled 13 792 to 1 544 computations (88.8% saved)

prune20.0ms (0.4%)

Memory
20.4MiB live, 59.6MiB allocated
Pruning

10 alts after pruning (6 fresh and 4 done)

PrunedKeptTotal
New7426748
Fresh101
Picked145
Done000
Total74410754
Accuracy
100.0%
Counts
754 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.1%
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
50.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
50.3%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
51.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
26.5%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
27.8%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
Compiler

Compiled 85 to 93 computations (-9.4% saved)

simplify75.0ms (1.5%)

Memory
3.6MiB live, 42.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
029143
036143
163139
294139
3152135
4297135
5592135
61134135
71601135
81924135
91964135
101968135
111970135
121973135
131975135
01975131
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- y 1) #s(literal -1 binary64))
#s(literal -1 binary64)
x
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
y
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))
(neg.f64 x)
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (* (- y 1) x) (*.f64 y x))
(*.f64 y x)
y
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
(*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)
#s(approx (- x 1/2) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
y
Outputs
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(fma.f64 #s(literal -1/2 binary64) y (fma.f64 x #s(approx (- y 1) #s(literal -1 binary64)) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- y 1) #s(literal -1 binary64))
#s(literal -1 binary64)
x
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(literal -1/2 binary64)
y
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))
#s(literal 918938533204673/1000000000000000 binary64)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))
(neg.f64 x)
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y)))
#s(approx (* (- y 1) x) (*.f64 y x))
#s(approx (* (- y 1) x) (*.f64 x y))
(*.f64 y x)
(*.f64 x y)
y
x
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
(*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)
#s(approx (- x 1/2) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
y

localize62.0ms (1.3%)

Memory
-16.2MiB live, 105.3MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0.015625
(*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)
accuracy30.464544187389954
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
accuracy32.129970937887045
#s(approx (- x 1/2) #s(literal -1/2 binary64))
accuracy0
(*.f64 y x)
accuracy30.18348076203608
#s(approx (* (- y 1) x) (*.f64 y x))
accuracy31.344280562869137
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
accuracy0
(neg.f64 x)
accuracy31.280766418024864
#s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))
accuracy31.776142628942157
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
accuracy31.776142628942157
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
accuracy32.11663445122389
#s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))
accuracy0
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
accuracy0.00390625
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
accuracy31.817601264955503
#s(approx (- y 1) #s(literal -1 binary64))
Samples
48.0ms256×0valid
Compiler

Compiled 100 to 23 computations (77% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.0ms
ival-mult: 12.0ms (34.5% of total)
ival-sub: 11.0ms (31.6% of total)
const: 6.0ms (17.2% of total)
ival-add: 3.0ms (8.6% of total)
exact: 1.0ms (2.9% of total)
ival-neg: 1.0ms (2.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series17.0ms (0.4%)

Memory
3.2MiB live, 42.0MiB allocated
Counts
14 → 264
Calls
Call 1
Inputs
#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())
#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())
#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())
#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())
#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())
#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())
#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())
#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt -1 (taylor 0 y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- y 1) (taylor 0 y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- y 1) (taylor 0 y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- y 1) (taylor 0 y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt 918938533204673/1000000000000000 (taylor 0 y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 x) (* x y)) (taylor 0 y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2)))) (taylor 0 y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 (/ 1 y))) (taylor inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 (/ 1 y))) (taylor inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 (/ 1 y))) (taylor inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1/2 y) (taylor inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2)) (taylor inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (* -1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (* y (- x 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2)) (taylor inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (/ 1 y) 1))) (taylor -inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (/ 1 y) 1))) (taylor -inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (/ 1 y) 1))) (taylor -inf y) (#s(alt #s(approx (- y 1) #s(literal -1 binary64)) (patch #s(approx (- y 1) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1/2 y) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) (patch (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (* -1 x)))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (* -1 x)))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (* -1 x)))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 x) (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (* -1 (* y (+ 1/2 (* -1 x)))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y)))))) (taylor -inf y) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1/2)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1/2 y)) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (- 918938533204673/1000000000000000 (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt 918938533204673/1000000000000000 (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (- 918938533204673/1000000000000000 (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt 918938533204673/1000000000000000 (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 918938533204673/1000000000000000 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (- 918938533204673/1000000000000000 (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor 0 x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor 0 x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor 0 x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor 0 x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (- 918938533204673/1000000000000000 (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y)) (taylor 0 x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1/2 y) (taylor 0 x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 y) (* x y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 y) (* x y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 y) (* x y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1/2) (taylor 0 x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1/2) (taylor 0 x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- x 1/2) (taylor 0 x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1)) (taylor inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1)) (taylor inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1)) (taylor inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1)) (taylor inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (- y 1)) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x))))) (taylor inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1/2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1/2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1/2 (/ y x)))) (taylor inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x))))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x))))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x))))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (patch (fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) (patch #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x))))) (taylor -inf x) (#s(alt #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) (patch #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- y 1)) (taylor -inf x) (#s(alt #s(approx (* (- y 1) x) (*.f64 y x)) (patch #s(approx (* (- y 1) x) (*.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 (- y 1)) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x))))) (taylor -inf x) (#s(alt #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (patch #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* 1/2 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* 1/2 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (* 1/2 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) (patch (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* 1/2 (/ 1 x)) 1))) (taylor -inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* 1/2 (/ 1 x)) 1))) (taylor -inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* 1/2 (/ 1 x)) 1))) (taylor -inf x) (#s(alt #s(approx (- x 1/2) #s(literal -1/2 binary64)) (patch #s(approx (- x 1/2) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@0
((+ (* (- y 1) x) (+ (* -1/2 y) 918938533204673/1000000000000000)) (- y 1) (+ (* -1/2 y) 918938533204673/1000000000000000) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (neg x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- y 1) x) (* y x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- x 1/2) y) (- x 1/2))
1.0ms
x
@-inf
((+ (* (- y 1) x) (+ (* -1/2 y) 918938533204673/1000000000000000)) (- y 1) (+ (* -1/2 y) 918938533204673/1000000000000000) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (neg x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- y 1) x) (* y x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- x 1/2) y) (- x 1/2))
1.0ms
y
@-inf
((+ (* (- y 1) x) (+ (* -1/2 y) 918938533204673/1000000000000000)) (- y 1) (+ (* -1/2 y) 918938533204673/1000000000000000) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (neg x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- y 1) x) (* y x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- x 1/2) y) (- x 1/2))
1.0ms
x
@inf
((+ (* (- y 1) x) (+ (* -1/2 y) 918938533204673/1000000000000000)) (- y 1) (+ (* -1/2 y) 918938533204673/1000000000000000) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (neg x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- y 1) x) (* y x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- x 1/2) y) (- x 1/2))
1.0ms
y
@inf
((+ (* (- y 1) x) (+ (* -1/2 y) 918938533204673/1000000000000000)) (- y 1) (+ (* -1/2 y) 918938533204673/1000000000000000) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (- 918938533204673/1000000000000000 x) (neg x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- y 1) x) (* y x) (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (* (- x 1/2) y) (- x 1/2))

simplify119.0ms (2.5%)

Memory
-8.8MiB live, 192.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0991593
13071449
28521449
322891449
466551449
080611345
Stop Event
iter limit
node limit
Counts
264 → 260
Calls
Call 1
Inputs
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
-1
(- y 1)
(- y 1)
(- y 1)
918938533204673/1000000000000000
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(* -1 x)
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
(+ (* -1 x) (* x y))
(* x y)
(* x y)
(* x y)
(* x y)
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 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 (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
y
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* y (- 1 (/ 1 y)))
(* -1/2 y)
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* x y)
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
(* y (+ x (* -1 (/ x y))))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
y
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* -1 (* y (- (/ 1 y) 1)))
(* -1/2 y)
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* x y)
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
(* -1 (* y (+ (* -1 x) (/ x y))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (+ 1/2 (* -1 x))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
918938533204673/1000000000000000
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
918938533204673/1000000000000000
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (* -1 x))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x y)
(* x y)
(* x y)
(* x y)
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* -1/2 y)
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
-1/2
(- x 1/2)
(- x 1/2)
(- x 1/2)
(* x (- y 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* -1 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* -1 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x y)
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
x
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- 1 (* 1/2 (/ 1 x))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x (- y 1))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* x y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
x
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
Outputs
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
-1
#s(literal -1 binary64)
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
(- y 1)
(-.f64 y #s(literal 1 binary64))
918938533204673/1000000000000000
#s(literal 918938533204673/1000000000000000 binary64)
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(+ (* -1 x) (* x y))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
y
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* y (- 1 (/ 1 y)))
(-.f64 y #s(literal 1 binary64))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- (* 918938533204673/1000000000000000 (/ 1 y)) 1/2))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* y (+ x (* -1 (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) 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))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
y
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1 (* y (- (/ 1 y) 1)))
(-.f64 y #s(literal 1 binary64))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (- 1/2 (* 918938533204673/1000000000000000 (/ 1 y)))))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* y (+ (* -1 x) (/ x y))))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ 918938533204673/1000000000000000 (* -1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1/2 y) (* x (- y 1))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
918938533204673/1000000000000000
#s(literal 918938533204673/1000000000000000 binary64)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
918938533204673/1000000000000000
#s(literal 918938533204673/1000000000000000 binary64)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
-1/2
#s(literal -1/2 binary64)
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(- x 1/2)
(-.f64 x #s(literal 1/2 binary64))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (+ (* -1/2 (/ y x)) (* 918938533204673/1000000000000000 (/ 1 x)))) 1))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- (* 918938533204673/1000000000000000 (/ 1 x)) 1))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
x
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- 1 (* 1/2 (/ 1 x))))
(-.f64 x #s(literal 1/2 binary64))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 (* x (- 1 (* 918938533204673/1000000000000000 (/ 1 x)))))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 y x)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
x
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))
(* -1 (* x (- (* 1/2 (/ 1 x)) 1)))
(-.f64 x #s(literal 1/2 binary64))

rewrite168.0ms (3.5%)

Memory
17.8MiB live, 255.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029132
036132
1146128
21101128
08403124
Stop Event
iter limit
node limit
iter limit
Counts
14 → 146
Calls
Call 1
Inputs
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- y 1) #s(literal -1 binary64))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))
(neg.f64 x)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (* (- y 1) x) (*.f64 y x))
(*.f64 y x)
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
(*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)
#s(approx (- x 1/2) #s(literal -1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval46.0ms (1%)

Memory
12.9MiB live, 133.1MiB allocated
Compiler

Compiled 4 844 to 478 computations (90.1% saved)

prune15.0ms (0.3%)

Memory
-30.2MiB live, 46.9MiB allocated
Pruning

10 alts after pruning (1 fresh and 9 done)

PrunedKeptTotal
New4060406
Fresh011
Picked055
Done044
Total40610416
Accuracy
100.0%
Counts
416 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.1%
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
50.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
50.3%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
51.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
26.5%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
27.8%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
Compiler

Compiled 53 to 58 computations (-9.4% saved)

simplify38.0ms (0.8%)

Memory
18.0MiB live, 57.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01430
01730
13528
26227
311526
422426
546326
687626
7124226
8145326
9147426
0147425
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
(fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))
y
x
(*.f64 #s(literal -1/2 binary64) y)
#s(literal -1/2 binary64)
Outputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
(fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
y
x
(*.f64 #s(literal -1/2 binary64) y)
#s(literal -1/2 binary64)

localize58.0ms (1.2%)

Memory
-0.6MiB live, 92.0MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))
accuracy0
(*.f64 #s(literal -1/2 binary64) y)
accuracy30.464544187389954
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
Samples
51.0ms256×0valid
Compiler

Compiled 26 to 16 computations (38.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 43.0ms
ival-mult: 27.0ms (62.2% of total)
const: 11.0ms (25.3% of total)
ival-sub: 3.0ms (6.9% of total)
ival-add: 2.0ms (4.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.1%)

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

6 calls:

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

simplify102.0ms (2.1%)

Memory
11.6MiB live, 127.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060359
1186340
2536340
31446340
44553340
57867340
08255321
Stop Event
iter limit
node limit
Counts
60 → 60
Calls
Call 1
Inputs
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(+ 918938533204673/1000000000000000 (* -1 x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- x 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* -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/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(* -1/2 y)
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
(+ (* -1/2 y) (* x y))
(- 918938533204673/1000000000000000 (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(* x y)
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
(* x (+ y (* -1/2 (/ y x))))
(* x (- y 1))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(* x y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(* x (- y 1))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
Outputs
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ 918938533204673/1000000000000000 (* -1 x))
(-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(+ 918938533204673/1000000000000000 (+ (* -1 x) (* y (- x 1/2))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- x 1/2))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* y (- (+ x (+ (* -1 (/ x y)) (* 918938533204673/1000000000000000 (/ 1 y)))) 1/2))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* y (+ 1/2 (+ (* -1 x) (* -1 (/ (+ 918938533204673/1000000000000000 (* -1 x)) y))))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(* -1/2 y)
(*.f64 #s(literal -1/2 binary64) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(+ (* -1/2 y) (* x y))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(- 918938533204673/1000000000000000 (* 1/2 y))
(fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(- (+ 918938533204673/1000000000000000 (* x (- y 1))) (* 1/2 y))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 x y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (+ y (* -1/2 (/ y x))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x (- (+ y (* 918938533204673/1000000000000000 (/ 1 x))) (+ 1 (* 1/2 (/ y x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* x y)
(*.f64 x y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* -1 (* x (+ (* -1 y) (* 1/2 (/ y x)))))
(*.f64 (-.f64 x #s(literal 1/2 binary64)) y)
(* x (- y 1))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(* -1 (* x (+ (* -1 (- y 1)) (* -1 (/ (- 918938533204673/1000000000000000 (* 1/2 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1/2 binary64)) y (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))

rewrite169.0ms (3.5%)

Memory
35.5MiB live, 225.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01427
01727
18625
270524
0851523
Stop Event
iter limit
node limit
iter limit
Counts
3 → 85
Calls
Call 1
Inputs
(fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
(*.f64 #s(literal -1/2 binary64) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval16.0ms (0.3%)

Memory
-7.6MiB live, 31.3MiB allocated
Compiler

Compiled 2 071 to 350 computations (83.1% saved)

prune11.0ms (0.2%)

Memory
-24.3MiB live, 22.9MiB allocated
Pruning

10 alts after pruning (0 fresh and 10 done)

PrunedKeptTotal
New1450145
Fresh000
Picked011
Done099
Total14510155
Accuracy
100.0%
Counts
155 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.1%
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
50.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
50.3%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
51.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
52.4%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
26.5%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
26.0%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
27.8%
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
Compiler

Compiled 135 to 100 computations (25.9% saved)

regimes20.0ms (0.4%)

Memory
0.0MiB live, 39.0MiB allocated
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Outputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
Calls

4 calls:

5.0ms
y
5.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
5.0ms
x
4.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
100.0%1(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
Compiler

Compiled 22 to 22 computations (0% saved)

regimes17.0ms (0.4%)

Memory
-8.1MiB live, 30.7MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 y #s(literal 1 binary64)) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
(fma.f64 #s(approx (- y 1) #s(literal -1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
Outputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
Calls

4 calls:

5.0ms
x
4.0ms
y
4.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
4.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
100.0%1(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
Compiler

Compiled 22 to 22 computations (0% saved)

regimes15.0ms (0.3%)

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

4 calls:

3.0ms
x
3.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
3.0ms
y
3.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Results
AccuracySegmentsBranch
97.2%3x
99.1%3y
79.5%4(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
79.5%4(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
Compiler

Compiled 22 to 22 computations (0% saved)

regimes5.0ms (0.1%)

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

1 calls:

4.0ms
y
Results
AccuracySegmentsBranch
99.1%3y
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes6.0ms (0.1%)

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

2 calls:

3.0ms
y
3.0ms
x
Results
AccuracySegmentsBranch
79.9%4x
77.0%4y
Compiler

Compiled 2 to 4 computations (-100% saved)

regimes10.0ms (0.2%)

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

4 calls:

2.0ms
y
2.0ms
x
2.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
2.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Results
AccuracySegmentsBranch
77.0%4y
68.6%4(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
68.6%4(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
63.2%5x
Compiler

Compiled 22 to 22 computations (0% saved)

regimes26.0ms (0.5%)

Memory
-16.5MiB live, 24.2MiB allocated
Counts
4 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
Outputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))
Calls

1 calls:

25.0ms
y
Results
AccuracySegmentsBranch
74.7%3y
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes8.0ms (0.2%)

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

4 calls:

2.0ms
y
2.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
2.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
2.0ms
x
Results
AccuracySegmentsBranch
50.3%1x
50.3%1(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
50.3%1(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
50.3%1y
Compiler

Compiled 22 to 22 computations (0% saved)

regimes8.0ms (0.2%)

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

4 calls:

3.0ms
y
2.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
2.0ms
x
2.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
Results
AccuracySegmentsBranch
48.8%3(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
48.8%3(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
49.0%3x
31.2%2y
Compiler

Compiled 22 to 22 computations (0% saved)

regimes6.0ms (0.1%)

Memory
13.8MiB live, 13.8MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
Outputs
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
Calls

4 calls:

1.0ms
(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
1.0ms
(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
26.0%1y
26.0%1(+.f64 (-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64))) #s(literal 918938533204673/1000000000000000 binary64))
26.0%1(-.f64 (*.f64 x (-.f64 y #s(literal 1 binary64))) (*.f64 y #s(literal 1/2 binary64)))
26.0%1x
Compiler

Compiled 22 to 22 computations (0% saved)

bsearch43.0ms (0.9%)

Memory
-8.7MiB live, 68.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
1.2590986254807234e-14
14109216.368278045
18.0ms
-1359196966.4939013
-1.2142033629107915e-8
Samples
26.0ms336×0valid
Compiler

Compiled 245 to 288 computations (-17.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
const: 6.0ms (35.6% of total)
ival-sub: 4.0ms (23.7% of total)
ival-mult: 4.0ms (23.7% of total)
ival-add: 2.0ms (11.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch3.0ms (0.1%)

Memory
5.0MiB live, 5.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2590986254807234e-14
14109216.368278045
1.0ms
-1359196966.4939013
-1.2142033629107915e-8
Compiler

Compiled 224 to 288 computations (-28.6% saved)

bsearch65.0ms (1.3%)

Memory
13.1MiB live, 92.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
1.945810659776282e+250
3.1195708510095403e+252
17.0ms
5.375985697665012e-36
2.435420328360178e-23
15.0ms
-541022419991.67206
-24252883407.821243
Samples
30.0ms384×0valid
Compiler

Compiled 237 to 320 computations (-35% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-mult: 6.0ms (31.7% of total)
const: 6.0ms (31.7% of total)
ival-sub: 4.0ms (21.2% of total)
ival-add: 2.0ms (10.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch31.0ms (0.6%)

Memory
-1.6MiB live, 35.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2590986254807234e-14
14109216.368278045
9.0ms
-3637674270.3032436
-1359196966.4939013
18.0ms
-1.0473435533473412e+104
-2.0818819527378777e+97
Samples
19.0ms224×0valid
Compiler

Compiled 248 to 324 computations (-30.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
const: 7.0ms (51.9% of total)
ival-mult: 3.0ms (22.2% of total)
ival-sub: 2.0ms (14.8% of total)
ival-add: 1.0ms (7.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.2590986254807234e-14
14109216.368278045
1.0ms
-3637674270.3032436
-1359196966.4939013
Compiler

Compiled 158 to 207 computations (-31% saved)

bsearch40.0ms (0.8%)

Memory
6.3MiB live, 42.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
1.1776602193489588e-5
794254.0208288846
19.0ms
-0.0641863813870505
-1.9677637706093018e-5
Samples
25.0ms288×0valid
Compiler

Compiled 140 to 231 computations (-65% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
const: 10.0ms (54.3% of total)
ival-mult: 4.0ms (21.7% of total)
ival-sub: 3.0ms (16.3% of total)
ival-add: 1.0ms (5.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify32.0ms (0.7%)

Memory
2.6MiB live, 43.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071476
189476
2102476
3112476
4129476
5158476
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
(if (<=.f64 y #s(literal -3/2 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))))
(if (<=.f64 y #s(literal -3/2 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y)) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))))
(if (<=.f64 x #s(literal -24500000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 x #s(literal 8166776806102523/340282366920938463463374607431768211456 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (if (<=.f64 x #s(literal 26000000000000001128074713195434168281515104374961011335555509066462532416040847484581583870133783980325927891975156885025924910582245345978527200504308831899370848168728689526136504124791566385908743645012840041893055771173537529427383993314226208768 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))))))
(if (<=.f64 y #s(literal -2300000000000000191990160930506137181279938515588927251042252462453164617744180423099440913163747328 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))))))
(if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(if (<=.f64 x #s(literal -1116892707587883/18014398509481984 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (if (<=.f64 x #s(literal 8286623314361713/9007199254740992 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))
Outputs
(fma.f64 (-.f64 y #s(literal 1 binary64)) x (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64)))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) (fma.f64 (-.f64 #s(literal 1/2 binary64) x) y x)))
(if (<=.f64 y #s(literal -3/2 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 y x (*.f64 #s(literal -1/2 binary64) y)))))
(if (<=.f64 y #s(literal -3/2 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y)) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 (-.f64 x #s(literal 1/2 binary64)) y))))
(if (<=.f64 x #s(literal -24500000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 x #s(literal 8166776806102523/340282366920938463463374607431768211456 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (if (<=.f64 x #s(literal 26000000000000001128074713195434168281515104374961011335555509066462532416040847484581583870133783980325927891975156885025924910582245345978527200504308831899370848168728689526136504124791566385908743645012840041893055771173537529427383993314226208768 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))))))
(if (<=.f64 x #s(literal -24500000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y))) (if (<=.f64 x #s(literal 8166776806102523/340282366920938463463374607431768211456 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (fma.f64 #s(literal -1/2 binary64) y #s(literal 918938533204673/1000000000000000 binary64))) (if (<=.f64 x #s(literal 26000000000000001128074713195434168281515104374961011335555509066462532416040847484581583870133783980325927891975156885025924910582245345978527200504308831899370848168728689526136504124791566385908743645012840041893055771173537529427383993314226208768 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y))))))
(if (<=.f64 y #s(literal -2300000000000000191990160930506137181279938515588927251042252462453164617744180423099440913163747328 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))))))
(if (<=.f64 y #s(literal -2300000000000000191990160930506137181279938515588927251042252462453164617744180423099440913163747328 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (*.f64 #s(approx (- x 1/2) #s(literal -1/2 binary64)) y)) (if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y))))))
(if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 y x)))))
(if (<=.f64 y #s(literal -1400000000 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y))) (if (<=.f64 y #s(literal 799388933858263/562949953421312 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (* (- y 1) x) (*.f64 x y)))))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) (-.f64 #s(literal 918938533204673/1000000000000000 binary64) x))
(if (<=.f64 x #s(literal -1116892707587883/18014398509481984 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x))) (if (<=.f64 x #s(literal 8286623314361713/9007199254740992 binary64)) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64))) #s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) (neg.f64 x)))))
#s(approx (+ (- (* x (- y 1)) (* y 1/2)) 918938533204673/1000000000000000) #s(approx (- 918938533204673/1000000000000000 x) #s(literal 918938533204673/1000000000000000 binary64)))

soundness1.4s (29.1%)

Memory
22.2MiB live, 682.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076582
1232520
2695520
31797520
46379520
08166501
02297
03097
114689
2107689
0843689
0991456
13071321
28521321
322891321
466551321
080611217
01031
01531
16931
252031
3772031
0824928
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 273 to 176 computations (35.5% saved)

preprocess66.0ms (1.4%)

Memory
0.7MiB live, 119.2MiB allocated
Compiler

Compiled 378 to 146 computations (61.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...