Graphics.Rendering.Chart.Plot.Vectors:renderPlotVectors from Chart-1.5.3

Time bar (total: 5.6s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

Compiled 11 to 9 computations (18.2% saved)

sample1.0s (18.1%)

Memory
-6.4MiB live, 1 276.2MiB allocated
Samples
558.0ms6 960×0valid
142.0ms1 296×1valid
Precisions
Click to see histograms. Total time spent on operations: 359.0ms
ival-sub: 171.0ms (47.6% of total)
ival-mult: 97.0ms (27% of total)
ival-add: 48.0ms (13.4% of total)
adjust: 28.0ms (7.8% of total)
ival-true: 7.0ms (1.9% of total)
exact: 5.0ms (1.4% of total)
ival-assert: 4.0ms (1.1% of total)
Bogosity

explain139.0ms (2.5%)

Memory
6.1MiB live, 124.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
684(28043936.05687073 5.5363641260330905e-132)0-(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
00-0-(-.f64 #s(literal 1 binary64) y)
00-0-(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
00-0-y
00-0-(-.f64 #s(literal 1 binary64) x)
00-0-#s(literal 1 binary64)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))cancellation721
Confusion
Predicted +Predicted -
+680
-4184
Precision
0.9444444444444444
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+6800
-41183
Precision?
0.9315068493150684
Recall?
1.0
Freqs
test
numberfreq
0184
172
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
44.0ms418×0valid
10.0ms94×1valid
Compiler

Compiled 88 to 32 computations (63.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-sub: 6.0ms (36.2% of total)
ival-mult: 4.0ms (24.2% of total)
ival-add: 3.0ms (18.1% of total)
adjust: 2.0ms (12.1% of total)
ival-true: 1.0ms (6% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess498.0ms (8.8%)

Memory
-14.5MiB live, 222.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01753
14446
214345
361145
4210835
5365135
6467935
7513435
8539935
9557535
10567635
11579635
12611935
13678135
14716435
15746835
16784535
079
0119
1199
2389
31069
43617
512977
631837
748817
856077
958677
1060637
1161557
1263137
1366927
1469057
1570577
1671337
1771767
1873087
1978147
080206
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Outputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
Compiler

Compiled 9 to 7 computations (22.2% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 9 to 7 computations (22.2% saved)

simplify334.0ms (5.9%)

Memory
13.3MiB live, 247.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0725
01125
11925
23825
310625
436123
5129723
6318323
7488123
8560723
9586723
10606323
11615523
12631323
13669223
14690523
15705723
16713323
17717623
18730823
19781423
0802022
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
x
(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
y
Outputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
x
(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
y

localize135.0ms (2.4%)

Memory
-3.4MiB live, 123.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) y)
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.00390625
(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
accuracy16.240993362593763
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Samples
88.0ms47×1valid
41.0ms209×0valid
Compiler

Compiled 52 to 16 computations (69.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 39.0ms
ival-add: 32.0ms (82.9% of total)
ival-sub: 3.0ms (7.8% of total)
ival-mult: 2.0ms (5.2% of total)
adjust: 1.0ms (2.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series5.0ms (0.1%)

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

6 calls:

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

simplify216.0ms (3.8%)

Memory
-2.3MiB live, 193.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068450
1186412
2490362
31714362
47473362
08200344
Stop Event
iter limit
node limit
Counts
72 → 72
Calls
Call 1
Inputs
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(- 1 x)
(- (+ 1 (* -1 (* y (- 1 x)))) x)
(- (+ 1 (* -1 (* y (- 1 x)))) x)
(- (+ 1 (* -1 (* y (- 1 x)))) x)
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* -1 (* y (- 1 x)))
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 x)))
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- 1 y)
(- (+ 1 (* -1 (* x (- 1 y)))) y)
(- (+ 1 (* -1 (* x (- 1 y)))) y)
(- (+ 1 (* -1 (* x (- 1 y)))) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* -1 (* x (- 1 y)))
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- 1 y)))
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 (* y (- 1 x)))) x)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(- (+ 1 (* -1 (* y (- 1 x)))) x)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(- (+ 1 (* -1 (* y (- 1 x)))) x)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* y (- (+ (* -1 (- 1 x)) (/ 1 y)) (/ x y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 (* y (- (+ 1 (* -1 (/ (- 1 x) y))) x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 (* x (- 1 y)))) y)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(- (+ 1 (* -1 (* x (- 1 y)))) y)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(- (+ 1 (* -1 (* x (- 1 y)))) y)
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- 1 y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* x (- (+ (* -1 (- 1 y)) (/ 1 x)) (/ y x)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- 1 y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 (* x (- (+ 1 (* -1 (/ (- 1 y) x))) y)))
(*.f64 (-.f64 y #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64)))
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite186.0ms (3.3%)

Memory
3.3MiB live, 367.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0722
01122
15222
243122
3548722
0868121
Stop Event
iter limit
node limit
iter limit
Counts
4 → 523
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval75.0ms (1.3%)

Memory
8.4MiB live, 203.9MiB allocated
Compiler

Compiled 12 187 to 1 558 computations (87.2% saved)

prune14.0ms (0.2%)

Memory
-28.2MiB live, 49.2MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New5905595
Fresh000
Picked101
Done000
Total5915596
Accuracy
100.0%
Counts
596 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
62.3%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
62.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
39.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
38.6%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 46 to 50 computations (-8.7% saved)

simplify278.0ms (4.9%)

Memory
35.2MiB live, 312.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

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

Useful iterations: 4 (0.0ms)

IterNodesCost
017102
022102
136102
258102
3135102
440787
5135287
6331787
7504587
8574987
9600487
10620087
11629287
12645087
13682987
14704287
15719487
16727087
17731387
18744587
19795187
0807187
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
y
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
(*.f64 x y)
x
y
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
y
Outputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y (-.f64 x #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 y (-.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
y
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y x))
(*.f64 x y)
(*.f64 y x)
x
y
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y (-.f64 x #s(literal 1 binary64))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
y

localize70.0ms (1.2%)

Memory
-21.5MiB live, 156.1MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0.00390625
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
accuracy23.879730111580695
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
accuracy0
(*.f64 x y)
accuracy38.570667154260555
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
accuracy0
(-.f64 #s(literal 1 binary64) y)
accuracy24.148387283860625
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
accuracy39.2758618743388
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
accuracy0.00390625
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
Samples
45.0ms209×0valid
16.0ms47×1valid
Compiler

Compiled 139 to 26 computations (81.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 40.0ms
ival-mult: 31.0ms (77.2% of total)
ival-sub: 5.0ms (12.5% of total)
ival-add: 3.0ms (7.5% of total)
adjust: 1.0ms (2.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series13.0ms (0.2%)

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

6 calls:

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

simplify127.0ms (2.3%)

Memory
-16.2MiB live, 223.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711264
12191156
25921123
314701123
451681123
082171015
Stop Event
iter limit
node limit
Counts
216 → 214
Calls
Call 1
Inputs
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
1
(+ 1 (* y (- x 1)))
(+ 1 (* y (- x 1)))
(+ 1 (* y (- x 1)))
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (- x 1))
(* y (- (+ x (/ 1 y)) 1))
(* y (- (+ x (/ 1 y)) 1))
(* y (- (+ x (/ 1 y)) 1))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* y (- x 1))
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(* y (- x 1))
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(+ 1 (* -1 y))
(+ 1 (+ (* -1 y) (* x y)))
(+ 1 (+ (* -1 y) (* x y)))
(+ 1 (+ (* -1 y) (* x y)))
-1
(- x 1)
(- x 1)
(- x 1)
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(* x y)
(* x y)
(* x y)
(* x y)
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(* -1 y)
(+ (* -1 y) (* x y))
(+ (* -1 y) (* x y))
(+ (* -1 y) (* x y))
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x y)
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
x
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x y)
(* x (+ y (* -1 (/ y x))))
(* x (+ y (* -1 (/ y x))))
(* x (+ y (* -1 (/ y x))))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
x
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* x y)
(* x y)
(* x y)
(* x y)
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* x y)
(* -1 (* x (+ (* -1 y) (/ y x))))
(* -1 (* x (+ (* -1 y) (/ y x))))
(* -1 (* x (+ (* -1 y) (/ y x))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* y (- x 1)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (- x 1)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (- x 1)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- (+ x (/ 1 y)) 1))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- (+ x (/ 1 y)) 1))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- (+ x (/ 1 y)) 1))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- (* -1 (- x 1)) (/ 1 y))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (- x 1))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (+ (* -1 y) (* x y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (+ (* -1 y) (* x y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (+ (* -1 y) (* x y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
-1
#s(literal -1 binary64)
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- x 1)
(-.f64 x #s(literal 1 binary64))
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(+ (* -1 y) (* x y))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(+ (* -1 y) (* x y))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(+ (* -1 y) (* x y))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ y (+ (* -1 (/ y x)) (/ 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
x
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (- 1 (/ 1 x)))
(-.f64 x #s(literal 1 binary64))
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x (+ y (* -1 (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* x (+ y (* -1 (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* x (+ y (* -1 (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (+ (* -1 y) (* -1 (/ (+ 1 (* -1 y)) x)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
x
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* -1 (* x (- (/ 1 x) 1)))
(-.f64 x #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (+ (* -1 y) (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* x (+ (* -1 y) (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* x (+ (* -1 y) (/ y x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)

rewrite182.0ms (3.2%)

Memory
24.9MiB live, 344.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01788
02288
18788
267488
3798388
0859283
Stop Event
iter limit
node limit
iter limit
Counts
10 → 289
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) y)
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
(*.f64 x y)
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<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.2%)

Memory
-11.2MiB live, 223.2MiB allocated
Compiler

Compiled 8 518 to 1 216 computations (85.7% saved)

prune19.0ms (0.3%)

Memory
-7.6MiB live, 74.5MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New5961597
Fresh000
Picked055
Done000
Total5966602
Accuracy
100.0%
Counts
602 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
62.3%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
62.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
39.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
25.8%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
38.6%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

simplify277.0ms (4.9%)

Memory
-7.8MiB live, 351.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 y)
cost-diff0
#s(approx (- 1 y) (neg.f64 y))
cost-diff0
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01025
01125
12125
24025
311625
440223
5133423
6325023
7496023
8568423
9594323
10613923
11623123
12638923
13676823
14698123
15713323
16720923
17725223
18738423
19789023
0801022
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y
Outputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y

localize24.0ms (0.4%)

Memory
6.5MiB live, 88.8MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(neg.f64 y)
accuracy24.148387283860625
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
accuracy31.255142218763233
#s(approx (- 1 y) (neg.f64 y))
Samples
13.0ms209×0valid
5.0ms47×1valid
Compiler

Compiled 27 to 15 computations (44.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-sub: 5.0ms (45.2% of total)
ival-mult: 2.0ms (18.1% of total)
adjust: 1.0ms (9% of total)
ival-add: 1.0ms (9% of total)
ival-neg: 1.0ms (9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series3.0ms (0%)

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

6 calls:

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

simplify127.0ms (2.2%)

Memory
-7.3MiB live, 227.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041232
1114212
2297202
3983202
44764202
56941202
08022184
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 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)
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))

rewrite126.0ms (2.2%)

Memory
20.8MiB live, 217.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
01124
15424
244324
3565321
0901920
Stop Event
iter limit
node limit
iter limit
Counts
3 → 30
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 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>

eval33.0ms (0.6%)

Memory
-23.5MiB live, 65.9MiB allocated
Compiler

Compiled 467 to 118 computations (74.7% saved)

prune4.0ms (0.1%)

Memory
13.8MiB live, 13.8MiB allocated
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New77178
Fresh000
Picked011
Done055
Total77784
Accuracy
100.0%
Counts
84 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
62.3%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
62.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
39.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
25.8%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
2.8%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
38.6%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 30 to 34 computations (-13.3% saved)

simplify272.0ms (4.8%)

Memory
-16.5MiB live, 260.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- 1 y) y)
cost-diff0
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
0921
11721
23621
310421
435819
5130419
6321419
7490919
8562319
9588519
10608119
11617319
12633119
13671019
14692319
15707519
16715119
17719419
18732619
19783219
0803818
Stop Event
iter limit
node limit
saturated
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
#s(approx (- 1 y) y)
y
Outputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
#s(approx (- 1 y) y)
y

localize23.0ms (0.4%)

Memory
4.9MiB live, 43.3MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy24.148387283860625
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
accuracy62.48958401824658
#s(approx (- 1 y) y)
Samples
12.0ms209×0valid
5.0ms47×1valid
Compiler

Compiled 21 to 13 computations (38.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-add: 4.0ms (37% of total)
ival-sub: 3.0ms (27.7% of total)
ival-mult: 2.0ms (18.5% of total)
adjust: 1.0ms (9.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series2.0ms (0%)

Memory
4.1MiB live, 4.1MiB allocated
Counts
2 → 36
Calls
Call 1
Inputs
#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())
#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())
Outputs
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 y)) (taylor 0 y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 x))) (taylor inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 (- 1 x)) (/ 1 y))) (taylor inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 (- 1 x)) (/ 1 y))) (taylor inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1 (- 1 x)) (/ 1 y))) (taylor inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) 1)) (taylor inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 x))) (taylor -inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (+ x (/ 1 y))))) (taylor -inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (+ x (/ 1 y))))) (taylor -inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (+ x (/ 1 y))))) (taylor -inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- 1 (/ 1 y)))) (taylor -inf y) (#s(alt #s(approx (- 1 y) y) (patch #s(approx (- 1 y) y) #<representation binary64>) () ())) ())
#s(alt (- 1 y) (taylor 0 x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y) (taylor 0 x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y) (taylor 0 x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y) (taylor 0 x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* -1 (- 1 y)))) (taylor inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x))) (taylor inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x))) (taylor inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x))) (taylor inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ (- 1 y) x)) y))) (taylor -inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ (- 1 y) x)) y))) (taylor -inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ (- 1 y) x)) y))) (taylor -inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify141.0ms (2.5%)

Memory
15.8MiB live, 166.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041208
1114188
2297178
3983178
44764178
56941178
08022160
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
1
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
(+ 1 (* -1 (* y (- 1 x))))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 (* y (- 1 x)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 (* y (- 1 x)))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(- 1 y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(* x (+ 1 (* -1 (- 1 y))))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(* x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* -1 (* y (- 1 x))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(+ 1 (* -1 y))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* y (+ (* -1 (- 1 x)) (/ 1 y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* y (- (/ 1 y) 1))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 y)
(neg.f64 y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(* -1 (* y (- 1 (/ 1 y))))
(-.f64 #s(literal 1 binary64) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(- (+ 1 (* x (+ 1 (* -1 (- 1 y))))) y)
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (+ 1 (* -1 (- 1 y))))
(*.f64 x y)
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x (- (+ 1 (+ (* -1 (- 1 y)) (/ 1 x))) (/ y x)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 x y)
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
(* -1 (* x (- (* -1 (/ (- 1 y) x)) y)))
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))

rewrite213.0ms (3.8%)

Memory
8.3MiB live, 244.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0920
0920
15020
242920
3549520
0868819
Stop Event
iter limit
node limit
saturated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
#s(approx (- 1 y) y)
Outputs
#<batchref>
#<batchref>

eval3.0ms (0.1%)

Memory
9.0MiB live, 9.0MiB allocated
Compiler

Compiled 214 to 22 computations (89.7% saved)

prune11.0ms (0.2%)

Memory
-35.1MiB live, 13.1MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New38038
Fresh000
Picked011
Done066
Total38745
Accuracy
100.0%
Counts
45 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
62.3%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
62.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
39.7%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
25.8%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
2.8%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
38.6%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 69 to 55 computations (20.3% saved)

regimes16.0ms (0.3%)

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

4 calls:

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

Compiled 14 to 15 computations (-7.1% saved)

regimes11.0ms (0.2%)

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

4 calls:

3.0ms
y
3.0ms
x
3.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
3.0ms
(-.f64 #s(literal 1 binary64) y)
Results
AccuracySegmentsBranch
85.8%3x
89.4%3y
88.7%3(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
88.0%3(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 14 to 15 computations (-7.1% saved)

regimes13.0ms (0.2%)

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

4 calls:

5.0ms
(-.f64 #s(literal 1 binary64) y)
3.0ms
y
2.0ms
x
2.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Results
AccuracySegmentsBranch
85.8%3x
69.8%3(-.f64 #s(literal 1 binary64) y)
79.3%3(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
69.8%3y
Compiler

Compiled 14 to 15 computations (-7.1% saved)

regimes9.0ms (0.2%)

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

4 calls:

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

Compiled 14 to 15 computations (-7.1% saved)

regimes12.0ms (0.2%)

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

4 calls:

6.0ms
x
2.0ms
y
2.0ms
(-.f64 #s(literal 1 binary64) y)
2.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Results
AccuracySegmentsBranch
61.3%3y
43.5%3x
61.3%3(-.f64 #s(literal 1 binary64) y)
61.3%3(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Compiler

Compiled 14 to 15 computations (-7.1% saved)

regimes6.0ms (0.1%)

Memory
17.2MiB live, 17.2MiB allocated
Accuracy

Total -23.3b remaining (-59.4%)

Threshold costs -23.3b (-59.4%)

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

4 calls:

2.0ms
y
2.0ms
x
1.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
1.0ms
(-.f64 #s(literal 1 binary64) y)
Results
AccuracySegmentsBranch
38.6%1x
38.6%1(-.f64 #s(literal 1 binary64) y)
38.6%1y
38.6%1(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch37.0ms (0.7%)

Memory
-24.0MiB live, 57.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
10.0ms
4.468145415291084e-114
3.099118279789067e-113
20.0ms
-10791118976.38163
-0.028725342766063592
Samples
13.0ms185×0valid
6.0ms61×1valid
1.0ms10×2valid
Compiler

Compiled 172 to 220 computations (-27.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-sub: 7.0ms (50.4% of total)
ival-add: 2.0ms (14.4% of total)
adjust: 2.0ms (14.4% of total)
ival-mult: 2.0ms (14.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch7.0ms (0.1%)

Memory
13.2MiB live, 13.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
5.0ms
2.389168571744932e+33
4.2917219264614884e+33
0.0ms
-4.6169325924535727e+27
-4.4782889154477037e+27
Samples
3.0ms64×0valid
Compiler

Compiled 44 to 56 computations (-27.3% saved)

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

bsearch1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0287253427660636
2.564355016407864e+35
0.0ms
-21972502016.75
0.0
Compiler

Compiled 12 to 12 computations (0% saved)

simplify28.0ms (0.5%)

Memory
20.0MiB live, 58.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041205
156205
265205
373205
485205
5104205
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
(if (<=.f64 y #s(literal -7656119366529843/9007199254740992 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 324922229779783/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))))
(if (<=.f64 x #s(literal -4499999999999999922355044352 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y)) (if (<=.f64 x #s(literal 2599999999999999743203450105626624 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))))
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
(if (<=.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))) #s(literal -20000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))) #s(literal 2 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))))
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Outputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
(if (<=.f64 y #s(literal -7656119366529843/9007199254740992 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 324922229779783/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))))
(if (<=.f64 y #s(literal -7656119366529843/9007199254740992 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y (-.f64 x #s(literal 1 binary64)))) (if (<=.f64 y #s(literal 324922229779783/10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y (-.f64 x #s(literal 1 binary64))))))
(if (<=.f64 x #s(literal -4499999999999999922355044352 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y)) (if (<=.f64 x #s(literal 2599999999999999743203450105626624 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))))
(if (<=.f64 x #s(literal -4499999999999999922355044352 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y x)) (if (<=.f64 x #s(literal 2599999999999999743203450105626624 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y x))))
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
(if (<=.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))) #s(literal -20000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))) #s(literal 2 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))))
(if (<=.f64 (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)) x) #s(literal -20000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)) x) #s(literal 2 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))))
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))

soundness817.0ms (14.5%)

Memory
-19.4MiB live, 387.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068450
1186412
2490362
31714362
47473362
08200344
0711264
12191156
25921123
314701123
451681123
082171015
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 119 to 74 computations (37.8% saved)

preprocess44.0ms (0.8%)

Memory
4.8MiB live, 120.9MiB allocated
Compiler

Compiled 214 to 100 computations (53.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...