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

Time bar (total: 6.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

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

Memory
-4.9MiB live, 1 538.2MiB allocated
Samples
446.0ms1 887×1valid
366.0ms6 364×0valid
1.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 589.0ms
ival-sub: 326.0ms (55.3% of total)
ival-mult: 111.0ms (18.8% of total)
ival-add: 97.0ms (16.5% of total)
adjust: 41.0ms (7% of total)
ival-true: 6.0ms (1% of total)
exact: 5.0ms (0.8% of total)
ival-assert: 3.0ms (0.5% of total)
Bogosity

explain131.0ms (2%)

Memory
31.3MiB live, 151.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
612(-54423817.36235743 -8.754022638456476e-122)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)))cancellation630
Confusion
Predicted +Predicted -
+610
-2193
Precision
0.9682539682539683
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+6100
-20193
Precision?
0.9682539682539683
Recall?
1.0
Freqs
test
numberfreq
0193
163
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
36.0ms120×1valid
19.0ms392×0valid
Compiler

Compiled 63 to 25 computations (60.3% saved)

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

preprocess483.0ms (7.6%)

Memory
-22.3MiB live, 272.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.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

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

Compiled 9 to 7 computations (22.2% saved)

simplify354.0ms (5.5%)

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

localize36.0ms (0.6%)

Memory
11.0MiB live, 50.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) y)
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.01171875
(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
accuracy14.612081917952793
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Samples
24.0ms196×0valid
6.0ms60×1valid
Compiler

Compiled 27 to 9 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-add: 16.0ms (70.4% of total)
ival-sub: 3.0ms (13.2% of total)
ival-mult: 2.0ms (8.8% of total)
adjust: 1.0ms (4.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series6.0ms (0.1%)

Memory
-27.5MiB live, 11.9MiB 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
2.0ms
y
@0
((+ x (* (- 1 x) (- 1 y))) (* (- 1 x) (- 1 y)) (- 1 x) (- 1 y))
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))

simplify234.0ms (3.7%)

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

rewrite199.0ms (3.1%)

Memory
-15.7MiB live, 181.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>

eval130.0ms (2%)

Memory
23.5MiB live, 183.9MiB allocated
Compiler

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

prune19.0ms (0.3%)

Memory
7.5MiB live, 49.8MiB allocated
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New5896595
Fresh000
Picked101
Done000
Total5906596
Accuracy
100.0%
Counts
596 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
87.3%
(+.f64 (-.f64 #s(literal 1 binary64) y) (fma.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) y) x))
100.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
58.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
62.0%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
41.5%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
38.4%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 68 to 64 computations (5.9% saved)

simplify377.0ms (5.9%)

Memory
-19.6MiB live, 304.2MiB 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
5131587
6322987
7493687
8564487
9589887
10609487
11618687
12634487
13672387
14693687
15708887
16716487
17720787
18733987
19784587
0805187
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)))
(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))
#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))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(-.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
y

localize58.0ms (0.9%)

Memory
3.1MiB live, 82.1MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0.015625
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
accuracy24.284204067836058
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y))
accuracy0
(*.f64 x y)
accuracy37.44323491292363
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
accuracy0
(-.f64 #s(literal 1 binary64) y)
accuracy26.76628959625243
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
accuracy39.400836486649915
#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.01171875
(fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64))
Samples
18.0ms60×1valid
17.0ms196×0valid
Compiler

Compiled 82 to 13 computations (84.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0ms
adjust: 9.0ms (40.4% of total)
ival-sub: 5.0ms (22.4% of total)
ival-mult: 5.0ms (22.4% of total)
ival-add: 3.0ms (13.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series27.0ms (0.4%)

Memory
-11.0MiB live, 28.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
16.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))
2.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
@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))

simplify193.0ms (3%)

Memory
22.2MiB live, 180.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711231
12191123
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)

rewrite235.0ms (3.7%)

Memory
5.5MiB live, 322.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01788
02288
18788
267488
3799288
0860183
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>

eval72.0ms (1.1%)

Memory
-12.1MiB live, 224.6MiB allocated
Compiler

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

prune19.0ms (0.3%)

Memory
-4.5MiB live, 74.0MiB allocated
Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New5952597
Fresh101
Picked145
Done000
Total5976603
Accuracy
100.0%
Counts
603 → 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.1%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
58.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
41.5%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
22.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
38.4%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 27 to 29 computations (-7.4% saved)

simplify302.0ms (4.7%)

Memory
9.3MiB live, 292.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 y)
cost-diff0
(fma.f64 y x (neg.f64 y))
cost-diff0
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
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
01249
01549
12849
25549
314349
440845
5124545
6322245
7489145
8560945
9586545
10606145
11615345
12631145
13669045
14690345
15705545
16713145
17717445
18730645
19781245
0801843
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
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
(fma.f64 y x (neg.f64 y))
y
x
(neg.f64 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
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
(fma.f64 y x (neg.f64 y))
y
x
(neg.f64 y)

localize32.0ms (0.5%)

Memory
-7.1MiB live, 73.9MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 y x (neg.f64 y))
accuracy0
(neg.f64 y)
accuracy24.284204067836058
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
accuracy0
(neg.f64 y)
accuracy26.76628959625243
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
accuracy31.48983796133468
#s(approx (- 1 y) (neg.f64 y))
Samples
16.0ms196×0valid
8.0ms60×1valid
Compiler

Compiled 36 to 12 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-sub: 5.0ms (30.8% of total)
ival-add: 5.0ms (30.8% of total)
ival-mult: 4.0ms (24.6% of total)
adjust: 1.0ms (6.2% of total)
ival-neg: 1.0ms (6.2% 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
16.3MiB live, 16.3MiB allocated
Counts
5 → 96
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>) () ())
#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())
#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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 (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 (* y (- 1 x)))) (taylor 0 y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor 0 y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor 0 y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor 0 y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor 0 y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- x 1)) (taylor inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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 (- 1 x))) (taylor -inf y) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 x)))) (taylor -inf y) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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 (- 1 y) (taylor 0 x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) y) (taylor 0 x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) y) (taylor 0 x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (* x y) y) (taylor 0 x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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 (+ 1 (* -1 (- 1 y)))) (taylor inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (* -1 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (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>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (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))) (fma.f64 y x (neg.f64 y))) (patch #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ y x)))) (taylor -inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ y x)))) (taylor -inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1 y) (/ y x)))) (taylor -inf x) (#s(alt (fma.f64 y x (neg.f64 y)) (patch (fma.f64 y x (neg.f64 y)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify127.0ms (2%)

Memory
-16.7MiB live, 219.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054527
1164485
2401461
31172461
44915461
57547461
08063425
Stop Event
iter limit
node limit
Counts
96 → 96
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
(+ 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)))
(* -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)))
(* 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)))))
(* -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 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (- 1 (+ x (/ 1 y)))))
(* -1 (* y (+ 1 (* -1 x))))
(* -1 (* y (+ 1 (* -1 x))))
(* -1 (* y (+ 1 (* -1 x))))
(* -1 (* y (+ 1 (* -1 x))))
(- 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)
(- (* x y) y)
(- (* x y) y)
(- (* x 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 (+ 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 (/ (- 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 (* -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
#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))
(* -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)
(* 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))
(* -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 (- 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 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (+ 1 (* -1 x))))
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(* -1 (* y (+ 1 (* -1 x))))
(*.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 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)
(- (* x y) y)
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(- (* x y) y)
(*.f64 (-.f64 x #s(literal 1 binary64)) y)
(- (* x y) 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 (+ 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 (/ (- 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)

rewrite133.0ms (2.1%)

Memory
17.0MiB live, 212.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
01544
17344
261639
3795239
0844037
Stop Event
iter limit
node limit
iter limit
Counts
5 → 147
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)
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
(fma.f64 y x (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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval90.0ms (1.4%)

Memory
-10.7MiB live, 156.2MiB allocated
Compiler

Compiled 3 039 to 538 computations (82.3% saved)

prune11.0ms (0.2%)

Memory
-12.9MiB live, 30.0MiB allocated
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New2781279
Fresh000
Picked022
Done044
Total2787285
Accuracy
100.0%
Counts
285 → 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.1%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
58.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
41.5%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
22.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
2.9%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
38.4%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 30 to 33 computations (-10% saved)

simplify300.0ms (4.7%)

Memory
18.0MiB live, 287.1MiB 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
5129819
6317419
7484519
8556219
9582019
10601619
11610819
12626619
13664519
14685819
15701019
16708619
17712919
18726119
19776719
0822318
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
6.6MiB live, 52.5MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy26.76628959625243
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
accuracy62.587397042536466
#s(approx (- 1 y) y)
Samples
11.0ms196×0valid
6.0ms60×1valid
Compiler

Compiled 15 to 9 computations (40% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-sub: 3.0ms (36.4% of total)
ival-mult: 2.0ms (24.3% of total)
adjust: 1.0ms (12.1% of total)
ival-add: 1.0ms (12.1% 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
6.4MiB live, 6.4MiB 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))

simplify168.0ms (2.6%)

Memory
-34.4MiB live, 242.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))

rewrite134.0ms (2.1%)

Memory
9.6MiB live, 290.5MiB 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>

eval4.0ms (0.1%)

Memory
11.8MiB live, 11.8MiB allocated
Compiler

Compiled 214 to 22 computations (89.7% saved)

prune5.0ms (0.1%)

Memory
15.7MiB live, 15.7MiB 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.1%
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))
58.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y))
41.5%
#s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y))
22.2%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y)))
2.9%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) y))
38.4%
#s(approx (+ x (* (- 1 x) (- 1 y))) #s(literal 1 binary64))
Compiler

Compiled 86 to 59 computations (31.4% saved)

regimes17.0ms (0.3%)

Memory
-41.7MiB live, 41.0MiB allocated
Counts
10 → 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 y x (neg.f64 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)))
(+.f64 (-.f64 #s(literal 1 binary64) y) (fma.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) y) x))
Outputs
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 (-.f64 x #s(literal 1 binary64)) y #s(literal 1 binary64)))
Calls

4 calls:

4.0ms
y
4.0ms
x
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)

regimes12.0ms (0.2%)

Memory
33.0MiB live, 33.0MiB allocated
Counts
7 → 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))
#s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 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))) (fma.f64 y x (neg.f64 y)))
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
87.6%3x
88.0%3y
87.8%3(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
87.1%3(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 14 to 15 computations (-7.1% saved)

regimes4.0ms (0.1%)

Memory
-26.8MiB live, 12.6MiB 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

1 calls:

4.0ms
y
Results
AccuracySegmentsBranch
87.9%3y
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes8.0ms (0.1%)

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

3 calls:

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

Compiled 11 to 11 computations (0% saved)

regimes10.0ms (0.2%)

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

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

Compiled 14 to 15 computations (-7.1% saved)

regimes8.0ms (0.1%)

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

2.0ms
y
2.0ms
x
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
43.1%3x
57.7%3y
57.7%3(-.f64 #s(literal 1 binary64) y)
57.6%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)

regimes7.0ms (0.1%)

Memory
-21.3MiB live, 18.4MiB allocated
Accuracy

Total -23.3b remaining (-59.1%)

Threshold costs -23.3b (-59.1%)

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.4%1x
38.4%1(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
38.4%1y
38.4%1(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch53.0ms (0.8%)

Memory
16.7MiB live, 99.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
36.0ms
5.736256561567704e-48
1.3196158447304645e-45
14.0ms
-3.646362466849514e+25
-1977839711015843.0
Samples
10.0ms211×0valid
6.0ms61×1valid
Compiler

Compiled 182 to 226 computations (-24.2% saved)

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

bsearch2.0ms (0%)

Memory
4.9MiB live, 4.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
5.736256561567704e-48
1.3196158447304645e-45
1.0ms
-3.646362466849514e+25
-1977839711015843.0
Compiler

Compiled 182 to 233 computations (-28% saved)

bsearch29.0ms (0.5%)

Memory
-20.6MiB live, 57.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
9.732235910447002e+63
9.312277701165834e+76
9.0ms
-3.8288899237122614e+25
-1.276831279210982e+25
Samples
11.0ms107×1valid
6.0ms133×0valid
Compiler

Compiled 132 to 177 computations (-34.1% saved)

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

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
478777.70834929217
0.0ms
-29957028.924406834
0.9987710486821678
Compiler

Compiled 12 to 13 computations (-8.3% saved)

simplify27.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
042244
153244
259244
365244
472244
583244
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 -2000000000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 7456192525361715/51422017416287688817342786954917203280710495801049370729644032 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))))
(if (<=.f64 y #s(literal -2000000000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 7456192525361715/51422017416287688817342786954917203280710495801049370729644032 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 -14000000000000000838860800 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y)) (if (<=.f64 x #s(literal 520000000000000005240611335592674700781914762194209693698923429888 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 #s(literal 1 binary64) y) #s(literal -20000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (-.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 -2000000000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 7456192525361715/51422017416287688817342786954917203280710495801049370729644032 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (-.f64 #s(literal 1 binary64) y)) #s(approx (+ x (* (- 1 x) (- 1 y))) (fma.f64 y x (neg.f64 y)))))
(if (<=.f64 y #s(literal -2000000000000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 (-.f64 x #s(literal 1 binary64)) y)) (if (<=.f64 y #s(literal 7456192525361715/51422017416287688817342786954917203280710495801049370729644032 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 -14000000000000000838860800 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 x y)) (if (<=.f64 x #s(literal 520000000000000005240611335592674700781914762194209693698923429888 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 -14000000000000000838860800 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) (*.f64 y x)) (if (<=.f64 x #s(literal 520000000000000005240611335592674700781914762194209693698923429888 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 #s(literal 1 binary64) y) #s(literal -20000000 binary64)) #s(approx (+ x (* (- 1 x) (- 1 y))) #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (-.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))

soundness1.0s (16%)

Memory
18.2MiB live, 571.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068450
1186412
2490362
31714362
47473362
08200344
01788
02288
18788
267488
3799288
0860183
0711231
12191123
25921123
314701123
451681123
082171015
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 150 to 95 computations (36.7% saved)

preprocess69.0ms (1.1%)

Memory
26.5MiB live, 144.7MiB allocated
Compiler

Compiled 238 to 102 computations (57.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...