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

Time bar (total: 5.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
1.0MiB live, 1.0MiB 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.2s (22.4%)

Memory
33.2MiB live, 982.5MiB allocated
Samples
738.0ms8 255×0valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 388.0ms
ival-sub: 218.0ms (56.1% of total)
ival-mult: 106.0ms (27.3% of total)
ival-add: 55.0ms (14.2% of total)
ival-true: 5.0ms (1.3% of total)
ival-assert: 3.0ms (0.8% of total)
adjust: 0.0ms (0% of total)
Bogosity

explain75.0ms (1.4%)

Memory
-18.5MiB live, 70.8MiB 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
33.0ms512×0valid
Compiler

Compiled 56 to 24 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 4.0ms (44% of total)
ival-add: 3.0ms (33% of total)
ival-sub: 2.0ms (22% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess77.0ms (1.4%)

Memory
-3.3MiB live, 32.9MiB allocated
Algorithm
egg-herbie
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
(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.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.8MiB live, 0.8MiB 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)

simplify17.0ms (0.3%)

Memory
11.7MiB live, 11.7MiB 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))
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
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(+.f64 y x)
x
y
(*.f64 y x)

localize35.0ms (0.7%)

Memory
-18.4MiB live, 17.8MiB 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
27.0ms256×0valid
Compiler

Compiled 32 to 12 computations (62.5% saved)

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

series6.0ms (0.1%)

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

6 calls:

TimeVariablePointExpression
1.0ms
y
@inf
((- (+ x y) (* x y)) (+ x y) (* x y))
1.0ms
x
@0
((- (+ 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
x
@inf
((- (+ x y) (* x y)) (+ x y) (* x y))

simplify336.0ms (6.2%)

Memory
13.6MiB live, 161.1MiB allocated
Algorithm
egg-herbie
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
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
y
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
x
(+.f64 y x)
(+.f64 y x)
(+.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)

rewrite244.0ms (4.5%)

Memory
7.1MiB live, 178.1MiB allocated
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>

eval106.0ms (2%)

Memory
3.3MiB live, 45.2MiB allocated
Compiler

Compiled 5 600 to 569 computations (89.8% saved)

prune9.0ms (0.2%)

Memory
-22.4MiB live, 14.1MiB allocated
Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2503253
Fresh000
Picked101
Done000
Total2513254
Accuracy
100.0%
Counts
254 → 3
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))
60.0%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
64.1%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
Compiler

Compiled 40 to 27 computations (32.5% saved)

simplify19.0ms (0.3%)

Memory
26.9MiB live, 26.9MiB 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))
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) y) x y))
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y

localize56.0ms (1%)

Memory
-16.2MiB live, 61.6MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (-.f64 #s(literal 1 binary64) x) y x)
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
(-.f64 #s(literal 1 binary64) y)
accuracy0
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
accuracy25.62133312456239
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.00390625
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
accuracy22.99897427106521
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
Samples
48.0ms256×0valid
Compiler

Compiled 132 to 27 computations (79.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-add: 11.0ms (57.8% of total)
ival-mult: 5.0ms (26.3% of total)
ival-sub: 3.0ms (15.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series21.0ms (0.4%)

Memory
-30.0MiB live, 21.2MiB allocated
Counts
8 → 168
Calls
Call 1
Inputs
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 (-.f64 #s(literal 1 binary64) x) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (-.f64 #s(literal 1 binary64) x) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (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
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
@-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 (4.1%)

Memory
14.8MiB live, 207.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071913
1221884
2541884
31326884
42650884
53867884
64450884
74885884
85069884
95159884
105919884
116092884
126322884
137066884
08032812
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
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)

rewrite262.0ms (4.8%)

Memory
1.5MiB live, 234.6MiB allocated
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>

eval69.0ms (1.3%)

Memory
10.1MiB live, 131.4MiB allocated
Compiler

Compiled 13 264 to 1 357 computations (89.8% saved)

prune14.0ms (0.3%)

Memory
6.8MiB live, 43.9MiB allocated
Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New5454549
Fresh000
Picked123
Done000
Total5466552
Accuracy
100.0%
Counts
552 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.5%
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
60.0%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
64.1%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
25.0%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
37.4%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
41.2%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
Compiler

Compiled 88 to 62 computations (29.5% saved)

simplify66.0ms (1.2%)

Memory
-15.0MiB live, 72.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
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))
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))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020124
025124
145124
267124
3101124
4145124
5283124
6425124
7597124
8774124
9909124
10930124
11936124
12945124
13951124
0951120
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#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 #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
Outputs
#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 #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

localize37.0ms (0.7%)

Memory
12.4MiB live, 88.3MiB allocated
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)
accuracy0
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
accuracy28.286046220376917
#s(approx (- 1 x) #s(literal 1 binary64))
accuracy0
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
accuracy0
(neg.f64 y)
accuracy25.62133312456239
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
accuracy30.395979516738326
#s(approx (- 1 y) (neg.f64 y))
accuracy0
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
accuracy25.62133312456239
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
accuracy33.02561843976668
#s(approx (- 1 y) #s(literal 1 binary64))
accuracy0.00390625
(*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
accuracy22.99897427106521
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
accuracy28.286046220376917
#s(approx (- 1 x) #s(literal 1 binary64))
Samples
28.0ms256×0valid
Compiler

Compiled 199 to 35 computations (82.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-sub: 6.0ms (40.1% of total)
ival-mult: 5.0ms (33.4% of total)
ival-add: 3.0ms (20% of total)
ival-neg: 1.0ms (6.7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series17.0ms (0.3%)

Memory
4.4MiB live, 50.4MiB allocated
Counts
12 → 240
Calls
Call 1
Inputs
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
3.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 y) x) (- 1 y) (neg 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 y) x) (- 1 y) (neg 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 y) x) (- 1 y) (neg 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 y) x) (- 1 y) (neg 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 y) x) (- 1 y) (neg y) (- (+ x y) (* x y)) (+ (* (- 1 x) y) x))

simplify260.0ms (4.8%)

Memory
-4.1MiB live, 112.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711254
12211202
25411202
313281202
426511202
538641202
644481202
748851202
850801202
951701202
1058921202
1160641202
1262941202
1370381202
080051112
Stop Event
iter limit
node limit
Counts
240 → 227
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 (* -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)))
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))
(* -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 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)))))
(* -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)))))
(* 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)))
(* 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 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)))))
(* 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
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
x
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
y
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(*.f64 (-.f64 #s(literal 1 binary64) x) y)
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)
(fma.f64 (-.f64 #s(literal 1 binary64) y) x y)

rewrite446.0ms (8.2%)

Memory
19.8MiB live, 256.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020110
025110
197110
2703110
08411106
Stop Event
iter limit
node limit
iter limit
Counts
12 → 116
Calls
Call 1
Inputs
#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(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 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
(fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) 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>

eval62.0ms (1.1%)

Memory
-14.9MiB live, 109.1MiB allocated
Compiler

Compiled 7 969 to 461 computations (94.2% saved)

prune28.0ms (0.5%)

Memory
-2.8MiB live, 36.1MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New3560356
Fresh000
Picked044
Done022
Total3566362
Accuracy
100.0%
Counts
362 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.5%
#s(approx (- (+ x y) (* x y)) (fma.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y x))
60.0%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x))
64.1%
#s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
25.0%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x))
37.4%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x))
41.2%
#s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y))
Compiler

Compiled 197 to 94 computations (52.3% saved)

regimes12.0ms (0.2%)

Memory
-11.2MiB live, 27.8MiB allocated
Counts
8 → 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 (-.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:

4.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)

regimes11.0ms (0.2%)

Memory
-7.2MiB live, 31.4MiB allocated
Counts
6 → 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))
#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)) (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

3 calls:

5.0ms
x
3.0ms
y
3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
99.0%3x
100.0%3y
98.3%2(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes6.0ms (0.1%)

Memory
20.6MiB live, 20.6MiB 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:

3.0ms
y
3.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
95.3%3(-.f64 (+.f64 x y) (*.f64 x y))
99.3%3y
Compiler

Compiled 8 to 7 computations (12.5% saved)

regimes10.0ms (0.2%)

Memory
-15.8MiB live, 26.5MiB 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:

5.0ms
x
2.0ms
y
2.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
89.2%3(-.f64 (+.f64 x y) (*.f64 x y))
82.2%2x
80.0%2y
Compiler

Compiled 9 to 9 computations (0% saved)

regimes6.0ms (0.1%)

Memory
21.5MiB live, 21.5MiB 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
x
2.0ms
y
2.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
Results
AccuracySegmentsBranch
76.5%1y
76.5%1x
76.5%1(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes6.0ms (0.1%)

Memory
-19.7MiB live, 19.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:

3.0ms
y
2.0ms
(-.f64 (+.f64 x y) (*.f64 x y))
2.0ms
x
Results
AccuracySegmentsBranch
64.1%2x
66.8%2y
75.7%2(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes5.0ms (0.1%)

Memory
12.1MiB live, 12.1MiB 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
y
1.0ms
x
Results
AccuracySegmentsBranch
41.2%1x
41.2%1y
41.2%1(-.f64 (+.f64 x y) (*.f64 x y))
Compiler

Compiled 9 to 9 computations (0% saved)

bsearch28.0ms (0.5%)

Memory
-4.6MiB live, 72.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
4.228788500000106e-20
6.983979405955745e-16
14.0ms
-2.175396340239294e-16
-8.522747548251269e-31
Samples
12.0ms288×0valid
Compiler

Compiled 532 to 406 computations (23.7% saved)

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

bsearch18.0ms (0.3%)

Memory
-3.9MiB live, 38.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
4.228788500000106e-20
6.983979405955745e-16
15.0ms
-242952.2676050016
-1.1090448417997314e-8
Samples
9.0ms160×0valid
Compiler

Compiled 562 to 426 computations (24.2% saved)

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

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.205252054605582e+300
8.768928159236183e+300
0.0ms
-inf
-4.414831478820054e+295
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-7.318118284782924e-265
4.6036892320964e-248
Compiler

Compiled 10 to 10 computations (0% saved)

simplify27.0ms (0.5%)

Memory
26.2MiB live, 63.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049256
169256
282256
387256
489256
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 y #s(literal -4360718064785109/20282409603651670423947251286016 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) (if (<=.f64 y #s(literal 215500602038799/316912650057057350374175801344 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 y #s(literal -240000 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 y #s(literal 215500602038799/316912650057057350374175801344 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 -inf.0 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 6000000000000000315028561531226521492226811486648954929495124693070814747933449174718228250482687184262226662997303269061655139412162583453868753108720241897090323205559454822426981402768728540356213719409824799670486714233805845280447916456680854967475552732920341057028694016833178321192756403240960 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 -283625966735417/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864 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 y #s(literal -4360718064785109/20282409603651670423947251286016 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 (-.f64 #s(literal 1 binary64) y) x)) (if (<=.f64 y #s(literal 215500602038799/316912650057057350374175801344 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 y #s(literal -240000 binary64)) #s(approx (- (+ x y) (* x y)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)) (if (<=.f64 y #s(literal 215500602038799/316912650057057350374175801344 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 y x) (*.f64 y x)) #s(literal -inf.0 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 6000000000000000315028561531226521492226811486648954929495124693070814747933449174718228250482687184262226662997303269061655139412162583453868753108720241897090323205559454822426981402768728540356213719409824799670486714233805845280447916456680854967475552732920341057028694016833178321192756403240960 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 y x) (*.f64 y x)) #s(literal -283625966735417/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864 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.6%)

Memory
-25.7MiB live, 454.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042280
1125280
2282280
3843280
42196280
53219280
64113280
74716280
85053280
95271280
105366280
115406280
125426280
135426280
145444280
155444280
09619262
071913
1221884
2541884
31326884
42650884
53867884
64450884
74885884
85069884
95159884
105919884
116092884
126322884
137066884
08032812
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 407 to 175 computations (57% saved)

preprocess42.0ms (0.8%)

Memory
29.3MiB live, 104.2MiB allocated
Remove

(sort x y)

Compiler

Compiled 554 to 128 computations (76.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...