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

Time bar (total: 5.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

Compiled 9 to 7 computations (22.2% saved)

sample1.3s (23.8%)

Memory
15.3MiB live, 568.4MiB allocated
Samples
796.0ms8 255×0valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 538.0ms
ival-sub: 217.0ms (40.3% of total)
ival-add: 186.0ms (34.6% of total)
ival-mult: 127.0ms (23.6% of total)
ival-true: 5.0ms (0.9% of total)
ival-assert: 3.0ms (0.6% of total)
adjust: 0.0ms (0% of total)
Bogosity

explain257.0ms (4.5%)

Memory
34.2MiB live, 108.1MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(-.f64 (+.f64 x y) (*.f64 x y))
00-0-y
00-0-(+.f64 x y)
00-0-(*.f64 x y)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
227.0ms512×0valid
Compiler

Compiled 41 to 19 computations (53.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 121.0ms
ival-mult: 116.0ms (95.7% of total)
ival-add: 3.0ms (2.5% of total)
ival-sub: 2.0ms (1.6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess238.0ms (4.2%)

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

Useful iterations: 0 (0.0ms)

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

(sort x y)

Compiler

Compiled 7 to 5 computations (28.6% saved)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 7 to 5 computations (28.6% saved)

simplify35.0ms (0.6%)

Memory
10.0MiB live, 49.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

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

Useful iterations: 0 (0.0ms)

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

localize17.0ms (0.3%)

Memory
12.9MiB live, 51.0MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 x y)
accuracy0
(*.f64 x y)
accuracy0.00390625
(-.f64 (+.f64 x y) (*.f64 x y))
Samples
12.0ms256×0valid
Compiler

Compiled 17 to 7 computations (58.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-add: 3.0ms (47% of total)
ival-mult: 2.0ms (31.4% of total)
ival-sub: 1.0ms (15.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.1%)

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

6 calls:

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

simplify301.0ms (5.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
042280
1125280
2282280
3843280
42196280
53219280
64113280
74716280
85053280
95271280
105366280
115406280
125426280
135426280
145444280
155444280
09619262
Stop Event
iter limit
node limit
Counts
72 → 64
Calls
Call 1
Inputs
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x y)
(+ x y)
(+ x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
y
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* x y)
(* x y)
(* x y)
(* x y)
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ x y)
(+ x y)
(+ x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
x
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* x y)
(* x y)
(* x y)
(* x y)
Outputs
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)

rewrite205.0ms (3.6%)

Memory
-17.2MiB live, 221.7MiB allocated
Rules
5 194×lower-fma.f64
5 194×lower-fma.f32
4 332×lower-*.f32
4 330×lower-*.f64
2 332×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0513
0813
14113
235613
3536213
0830413
Stop Event
iter limit
node limit
iter limit
Counts
3 → 189
Calls
Call 1
Inputs
(-.f64 (+.f64 x y) (*.f64 x y))
(+.f64 x y)
(*.f64 x y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval44.0ms (0.8%)

Memory
10.9MiB live, 92.1MiB allocated
Compiler

Compiled 5 320 to 566 computations (89.4% saved)

prune7.0ms (0.1%)

Memory
-16.1MiB live, 21.2MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2503253
Fresh000
Picked011
Done000
Total2504254
Accuracy
100.0%
Counts
254 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (+.f64 x y) (*.f64 x y))
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
61.4%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
63.9%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
Compiler

Compiled 26 to 23 computations (11.5% saved)

simplify19.0ms (0.3%)

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

Found 9 expressions of interest:

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

Useful iterations: 2 (0.0ms)

IterNodesCost
01474
01974
13674
26671
39871
417171
529771
644071
752371
855371
055371
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
x
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y
Outputs
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
x
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) y) x y))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y

localize41.0ms (0.7%)

Memory
7.6MiB live, 52.4MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
accuracy0.00390625
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
accuracy0
(-.f64 #s(literal 1 binary64) y)
accuracy0.00390625
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
accuracy24.696676305868138
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.0078125
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
accuracy23.084066225289483
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
Samples
33.0ms256×0valid
Compiler

Compiled 58 to 13 computations (77.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-add: 16.0ms (66.8% of total)
ival-mult: 5.0ms (20.9% of total)
ival-sub: 3.0ms (12.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.2%)

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

6 calls:

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

simplify223.0ms (3.9%)

Memory
-8.8MiB live, 182.8MiB allocated
Algorithm
egg-herbie
Rules
4 268×lower-fma.f64
4 268×lower-fma.f32
4 064×lower-*.f64
4 064×lower-*.f32
2 480×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071913
1221884
2541884
31326884
42656884
53882884
64466884
74902884
85099884
95189884
105934884
116106884
126336884
137080884
08004812
Stop Event
iter limit
node limit
Counts
168 → 158
Calls
Call 1
Inputs
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* -1 (* x y))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x y))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- y 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
Outputs
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- y 1)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)

rewrite179.0ms (3.2%)

Memory
-16.2MiB live, 272.4MiB allocated
Rules
8 172×lower-fma.f32
8 170×lower-fma.f64
5 766×lower-*.f32
5 762×lower-*.f64
4 076×lower-/.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01462
01962
18859
270859
0848059
Stop Event
iter limit
node limit
iter limit
Counts
8 → 332
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 #s(literal 1 binary64) x)
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(-.f64 #s(literal 1 binary64) y)
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval160.0ms (2.8%)

Memory
9.1MiB live, 197.7MiB allocated
Compiler

Compiled 8 929 to 1 348 computations (84.9% saved)

prune17.0ms (0.3%)

Memory
-4.1MiB live, 74.2MiB allocated
Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New5445549
Fresh000
Picked123
Done101
Total5467553
Accuracy
100.0%
Counts
553 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
63.9%
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
74.1%
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
61.4%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
26.7%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
36.8%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
39.1%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
Compiler

Compiled 69 to 70 computations (-1.4% saved)

simplify39.0ms (0.7%)

Memory
6.2MiB live, 51.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 y)
cost-diff0
(fma.f64 (neg.f64 y) x y)
cost-diff0
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
cost-diff0
(neg.f64 y)
cost-diff0
#s(approx (- 1 y) (neg.f64 y))
cost-diff0
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
cost-diff0
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
cost-diff0
#s(approx (- 1 y) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
cost-diff0
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
cost-diff0
#s(approx (- 1 x) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
cost-diff0
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
cost-diff0
#s(approx (- 1 x) #s(literal 1 binary64))
cost-diff0
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
cost-diff0
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
Rules
704×lower-fma.f32
700×lower-fma.f64
352×lower-*.f32
346×lower-*.f64
200×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022146
029146
153146
273146
3108146
4154146
5298146
6429146
7623146
8837146
9913146
10921146
11927146
12937146
13941146
0941141
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y
x
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
#s(approx (- 1 y) #s(literal 1 binary64))
#s(literal 1 binary64)
x
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y
x
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
(fma.f64 (neg.f64 y) x y)
(neg.f64 y)
y
x
Outputs
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y
x
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
#s(approx (- 1 y) #s(literal 1 binary64))
#s(literal 1 binary64)
x
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y
x
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
(fma.f64 (neg.f64 y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(neg.f64 y)
y
x

localize53.0ms (0.9%)

Memory
23.8MiB live, 100.6MiB allocated
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (neg.f64 y) x y)
accuracy0
(neg.f64 y)
accuracy23.084066225289483
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
accuracy0
(neg.f64 y)
accuracy0.00390625
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
accuracy24.696676305868138
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
accuracy31.95836772874241
#s(approx (- 1 y) (neg.f64 y))
accuracy0.00390625
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
accuracy24.696676305868138
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
accuracy32.53485705207409
#s(approx (- 1 y) #s(literal 1 binary64))
accuracy0.0078125
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
accuracy23.084066225289483
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
accuracy30.93864898242475
#s(approx (- 1 x) #s(literal 1 binary64))
accuracy0
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
accuracy0.00390625
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
accuracy30.93864898242475
#s(approx (- 1 x) #s(literal 1 binary64))
Samples
42.0ms256×0valid
Compiler

Compiled 92 to 16 computations (82.6% saved)

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

series14.0ms (0.2%)

Memory
-5.3MiB live, 33.1MiB allocated
Counts
14 → 288
Calls
Call 1
Inputs
#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())
#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())
#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())
#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())
#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())
#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())
#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())
#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())
Outputs
#s(alt x (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* -1 (* x y))) (taylor 0 y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (- 1 x))) (taylor 0 y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor 0 y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 x) (/ x y))) (taylor inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (+ 1 (/ x y)) x)) (taylor inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y))))) (taylor -inf y) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- 1 x)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) #s(literal 1 binary64)) (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ x (* -1 (/ x y))))) (taylor -inf y) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) (neg.f64 y)) (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1 x))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x))))) (taylor -inf y) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- x 1))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- x 1))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- x 1))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- x 1))) (taylor -inf y) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (+ 1 (* -1 y)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (+ 1 (* -1 y)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (+ 1 (* -1 y)))) (taylor 0 x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor 0 x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (+ y (* x (- 1 y))) (taylor 0 x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (+ (* -1 y) (/ y x)))) (taylor inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (+ (* -1 y) (/ y x)))) (taylor inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (+ (* -1 y) (/ y x)))) (taylor inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (/ y x)) y)) (taylor inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1 y) (/ y x))) (taylor inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- y 1))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (+ y (* -1 (/ y x))) 1))) (taylor -inf x) (#s(alt (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (- 1 y)) (taylor -inf x) (#s(alt (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 y))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y))))) (taylor -inf x) (#s(alt #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x y)) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ y (* -1 (/ y x))))) (taylor -inf x) (#s(alt (fma.f64 (neg.f64 y) x y) (patch (fma.f64 (neg.f64 y) x y) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify236.0ms (4.2%)

Memory
-10.2MiB live, 239.3MiB allocated
Algorithm
egg-herbie
Rules
4 304×lower-fma.f64
4 304×lower-fma.f32
4 152×lower-*.f64
4 152×lower-*.f32
2 480×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0741518
12291464
25671464
313441464
426731464
538801464
644611464
749011464
850851464
951751464
1059181464
1160881464
1263181464
1370621464
080301356
Stop Event
iter limit
node limit
Counts
288 → 272
Calls
Call 1
Inputs
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
x
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(+ x (* y (- 1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* y (- 1 x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (- (+ 1 (/ x y)) x))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (- 1 x))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* y (+ 1 (* -1 x)))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(* -1 (* y (- x 1)))
(* -1 (* y (- x 1)))
(* -1 (* y (- x 1)))
(* -1 (* y (- x 1)))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
(+ y (* x (+ 1 (* -1 y))))
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
y
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
(+ y (* x (- 1 y)))
y
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(+ y (* -1 (* x y)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (+ 1 (* -1 y)))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* x (+ 1 (+ (* -1 y) (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* -1 (* x y))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* x (- (+ 1 (/ y x)) y))
(* -1 (* x y))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* x (+ (* -1 y) (/ y x)))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- y 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x y))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (+ 1 (* -1 y)))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(* -1 (* x y))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
(* -1 (* x (+ y (* -1 (/ y x)))))
Outputs
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(+ x (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
x
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ x (* y (- 1 x)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* y (+ (* -1 x) (/ x y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- (+ 1 (/ x y)) x))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (+ (* -1 (- 1 x)) (* -1 (/ x y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- 1 x))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* y (+ x (* -1 (/ x y)))))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* y (+ 1 (* -1 x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- (* -1 (/ x y)) (+ 1 (* -1 x)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* y (- x 1)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- x 1)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- x 1)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (- x 1)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (+ 1 (* -1 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+ y (* x (- 1 y)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(+ y (* -1 (* x y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (+ 1 (+ (* -1 y) (/ y x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- (+ 1 (/ y x)) y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ (* -1 y) (/ y x)))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- y 1)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (+ y (* -1 (/ y x))) 1)))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (- 1 y))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* x (+ 1 (* -1 y)))
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x (- (* -1 (/ y x)) (+ 1 (* -1 y)))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(* -1 (* x y))
(*.f64 (neg.f64 x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ y (* -1 (/ y x)))))
(*.f64 (-.f64 #s(literal 1 binary64) x) y)

rewrite238.0ms (4.2%)

Memory
12.3MiB live, 206.4MiB allocated
Rules
8 642×lower-fma.f32
8 638×lower-fma.f64
5 146×lower-*.f32
5 140×lower-*.f64
3 816×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022128
029128
1115128
2832128
08593123
Stop Event
iter limit
node limit
iter limit
Counts
14 → 140
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
#s(approx (- 1 y) #s(literal 1 binary64))
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
(fma.f64 (neg.f64 y) x y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval75.0ms (1.3%)

Memory
-16.0MiB live, 70.4MiB allocated
Compiler

Compiled 4 812 to 589 computations (87.8% saved)

prune15.0ms (0.3%)

Memory
0.1MiB live, 36.9MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New4560456
Fresh000
Picked055
Done022
Total4567463
Accuracy
100.0%
Counts
463 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
63.9%
#s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y))
74.1%
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
61.4%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
26.7%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
36.8%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
39.1%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
Compiler

Compiled 95 to 69 computations (27.4% saved)

regimes14.0ms (0.2%)

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

3 calls:

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

Compiled 9 to 9 computations (0% saved)

regimes9.0ms (0.2%)

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

3 calls:

3.0ms
y
3.0ms
x
3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
98.1%3x
99.2%3y
97.8%2(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes3.0ms (0.1%)

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

1 calls:

3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
97.8%2(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes8.0ms (0.1%)

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

2 calls:

5.0ms
y
3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
98.8%3y
95.2%3(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 8 to 7 computations (12.5% saved)

regimes7.0ms (0.1%)

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

3 calls:

2.0ms
y
2.0ms
x
2.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
88.1%3(-.f64 (+.f64 x y) (*.f64 x y))
82.4%3x
79.9%2y
Compiler

Compiled 9 to 9 computations (0% saved)

regimes6.0ms (0.1%)

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

3 calls:

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

Compiled 9 to 9 computations (0% saved)

regimes33.0ms (0.6%)

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

3 calls:

30.0ms
y
2.0ms
x
1.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
61.9%2x
73.1%2(-.f64 (+.f64 x y) (*.f64 x y))
65.4%2y
Compiler

Compiled 9 to 9 computations (0% saved)

regimes4.0ms (0.1%)

Memory
9.0MiB live, 9.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

3 calls:

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

Compiled 9 to 9 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-2.442441830535833e-299
6.313350948737484e-269
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-2.442441830535833e-299
6.313350948737484e-269
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch32.0ms (0.6%)

Memory
-0.3MiB live, 36.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
6.20778984060901e-9
6.932764260905937e-6
21.0ms
-7.349574268653308
-3.5891638345429833e-13
Samples
10.0ms288×0valid
Compiler

Compiled 226 to 262 computations (-15.9% saved)

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

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.601332736588832e+301
2.6074623219799716e+302
0.0ms
-1.560928347448253e+284
-4.47932337433801e+283
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-2.442441830535833e-299
6.313350948737484e-269
Compiler

Compiled 10 to 10 computations (0% saved)

simplify70.0ms (1.2%)

Memory
-17.6MiB live, 59.1MiB allocated
Algorithm
egg-herbie
Rules
18×*-commutative-binary64-*.f64
14×+-commutative-binary64-+.f64
12×sub-neg-binary64-neg.f64-+.f64--.f64
neg-sub0-binary64--.f64-neg.f64
neg-mul-1-binary64-*.f64-neg.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
050278
170278
283278
388278
490278
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)))
(if (<=.f64 y #s(literal -8106479329266893/1125899906842624 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 y #s(literal 8028023020878397/1180591620717411303424 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -100000000000000007921438250845767654125681919169971093408389934233443575897517102772544534557205764529752162833294418062406838213115052098838781957320876356853543120821491881752894667070520582225774709469217797130505057184069381648545374773244373557467226310750742042216461653692645376 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal 100000000000000007629703079084894925347346855150656811701601734206211380288125794484142188964691784076639747577138548761372210387844799938291815611350519830750167649856488981626536368095414607314235151058373458986890825155659063617715863205282622390509284183439858617103083735673849899204570498157510656 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))))
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)))
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
Outputs
#s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)))
(if (<=.f64 (-.f64 (+.f64 y x) (*.f64 y x)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (fma.f64 (neg.f64 y) x y)))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)))
(if (<=.f64 (-.f64 (+.f64 y x) (*.f64 y x)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)))
(if (<=.f64 y #s(literal -8106479329266893/1125899906842624 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 y #s(literal 8028023020878397/1180591620717411303424 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -100000000000000007921438250845767654125681919169971093408389934233443575897517102772544534557205764529752162833294418062406838213115052098838781957320876356853543120821491881752894667070520582225774709469217797130505057184069381648545374773244373557467226310750742042216461653692645376 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal 100000000000000007629703079084894925347346855150656811701601734206211380288125794484142188964691784076639747577138548761372210387844799938291815611350519830750167649856488981626536368095414607314235151058373458986890825155659063617715863205282622390509284183439858617103083735673849899204570498157510656 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))))
(if (<=.f64 (-.f64 (+.f64 y x) (*.f64 y x)) #s(literal -100000000000000007921438250845767654125681919169971093408389934233443575897517102772544534557205764529752162833294418062406838213115052098838781957320876356853543120821491881752894667070520582225774709469217797130505057184069381648545374773244373557467226310750742042216461653692645376 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 (-.f64 (+.f64 y x) (*.f64 y x)) #s(literal 100000000000000007629703079084894925347346855150656811701601734206211380288125794484142188964691784076639747577138548761372210387844799938291815611350519830750167649856488981626536368095414607314235151058373458986890825155659063617715863205282622390509284183439858617103083735673849899204570498157510656 binary64)) #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))))
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(if (<=.f64 (-.f64 (+.f64 x y) (*.f64 x y)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)))
(if (<=.f64 (-.f64 (+.f64 y x) (*.f64 y x)) #s(literal -7540071506325551/377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)))
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))

soundness1.6s (28.9%)

Memory
5.5MiB live, 403.9MiB allocated
Rules
19 840×lower-fma.f64
19 840×lower-fma.f32
8 172×lower-fma.f32
8 170×lower-fma.f64
5 766×lower-*.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
042280
1125280
2282280
3843280
42196280
53219280
64113280
74716280
85053280
95271280
105366280
115406280
125426280
135426280
145444280
155444280
09619262
071913
1221884
2541884
31326884
42656884
53882884
64466884
74902884
85099884
95189884
105934884
116106884
126336884
137080884
08004812
01462
01962
18859
270859
0848059
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 253 to 155 computations (38.7% saved)

preprocess65.0ms (1.1%)

Memory
-3.8MiB live, 70.4MiB allocated
Remove

(sort x y)

Compiler

Compiled 320 to 112 computations (65% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...