Data.Colour.CIE.Chromaticity:chromaCoords from colour-2.3.3

Time bar (total: 4.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.3MiB live, 0.3MiB 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 7 to 7 computations (0% saved)

sample995.0ms (23.4%)

Memory
-13.0MiB live, 461.4MiB allocated
Samples
693.0ms8 249×0valid
0.0ms2valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 406.0ms
ival-sub: 391.0ms (96.3% of total)
ival-true: 6.0ms (1.5% of total)
exact: 5.0ms (1.2% of total)
ival-assert: 3.0ms (0.7% of total)
adjust: 0.0ms (0% of total)
Bogosity

explain63.0ms (1.5%)

Memory
-2.7MiB live, 153.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(-.f64 (-.f64 #s(literal 1 binary64) x) y)
00-0-y
00-0-(-.f64 #s(literal 1 binary64) x)
00-0-#s(literal 1 binary64)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
22.0ms512×0valid
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-sub: 9.0ms (92.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess34.0ms (0.8%)

Memory
18.6MiB live, 56.8MiB allocated
Algorithm
egg-herbie
Rules
240×lower-fma.f64
240×lower-fma.f32
140×sub-neg
96×lower-*.f64
96×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
13826
212225
330025
452825
561125
664825
765025
055
075
1155
2315
3665
41265
52295
62895
73195
83215
03215
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Outputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 (-.f64 #s(literal 1 binary64) y) x)
Symmetry

(sort x y)

Compiler

Compiled 5 to 5 computations (0% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 5 to 5 computations (0% saved)

simplify13.0ms (0.3%)

Memory
-19.3MiB live, 19.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 #s(literal 1 binary64) x)
cost-diff0
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Rules
240×lower-fma.f64
240×lower-fma.f32
96×lower-*.f64
96×lower-+.f64
96×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
0711
11511
23111
36611
412611
522911
628911
731911
832111
032111
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y
Outputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 (-.f64 #s(literal 1 binary64) y) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
y

localize27.0ms (0.6%)

Memory
-26.8MiB live, 32.9MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
accuracy0
(-.f64 #s(literal 1 binary64) x)
Samples
8.0ms256×0valid
Compiler

Compiled 13 to 7 computations (46.2% saved)

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

series2.0ms (0%)

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

6 calls:

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

simplify304.0ms (7.2%)

Memory
11.0MiB live, 128.3MiB allocated
Algorithm
egg-herbie
Rules
3 240×lower-fma.f64
3 240×lower-fma.f32
2 044×div-sub
1 884×lower-/.f32
1 884×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037136
1109136
2310136
3904136
42756136
54023136
65322136
75853136
86219136
96407136
106889136
116993136
127751136
08109136
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite182.0ms (4.3%)

Memory
-5.2MiB live, 230.7MiB allocated
Rules
7 126×lower-fma.f64
7 126×lower-fma.f32
4 118×lower-*.f64
4 118×lower-*.f32
1 990×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
078
1408
23238
348668
087598
Stop Event
iter limit
node limit
iter limit
Counts
2 → 275
Calls
Call 1
Inputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(-.f64 #s(literal 1 binary64) x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval39.0ms (0.9%)

Memory
11.2MiB live, 83.2MiB allocated
Compiler

Compiled 5 899 to 742 computations (87.4% saved)

prune7.0ms (0.2%)

Memory
28.0MiB live, 28.0MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New3065311
Fresh000
Picked101
Done000
Total3075312
Accuracy
100.0%
Counts
312 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.0%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
61.6%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
60.7%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
39.0%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.7%
#s(approx (- (- 1 x) y) (neg.f64 x))
Compiler

Compiled 38 to 46 computations (-21.1% saved)

simplify18.0ms (0.4%)

Memory
-24.9MiB live, 26.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- 1 x) #s(literal 1 binary64))
cost-diff0
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
cost-diff0
(-.f64 #s(literal 1 binary64) x)
cost-diff0
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
cost-diff0
(neg.f64 y)
cost-diff0
#s(approx (- (- 1 x) y) (neg.f64 y))
cost-diff0
(neg.f64 x)
cost-diff0
#s(approx (- (- 1 x) y) (neg.f64 x))
cost-diff0
(neg.f64 x)
cost-diff0
#s(approx (- 1 x) (neg.f64 x))
cost-diff0
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
Rules
368×lower-fma.f64
368×lower-fma.f32
160×lower-*.f64
160×lower-*.f32
144×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01568
02068
13368
25768
310768
418668
534068
642668
748468
849268
049268
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
#s(approx (- 1 x) (neg.f64 x))
(neg.f64 x)
x
y
#s(approx (- (- 1 x) y) (neg.f64 x))
(neg.f64 x)
x
#s(approx (- (- 1 x) y) (neg.f64 y))
(neg.f64 y)
y
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y
Outputs
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
#s(approx (- 1 x) (neg.f64 x))
(neg.f64 x)
x
y
#s(approx (- (- 1 x) y) (neg.f64 x))
(neg.f64 x)
x
#s(approx (- (- 1 x) y) (neg.f64 y))
(neg.f64 y)
y
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
y

localize26.0ms (0.6%)

Memory
9.8MiB live, 46.5MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
accuracy33.710328843873874
#s(approx (- 1 x) #s(literal 1 binary64))
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy25.147505196068142
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
accuracy0
(neg.f64 y)
accuracy39.067254459789275
#s(approx (- (- 1 x) y) (neg.f64 y))
accuracy0
(neg.f64 x)
accuracy37.92667228573075
#s(approx (- (- 1 x) y) (neg.f64 x))
accuracy0
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
accuracy0
(neg.f64 x)
accuracy28.178982713994635
#s(approx (- 1 x) (neg.f64 x))
Samples
16.0ms256×0valid
Compiler

Compiled 50 to 9 computations (82% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-sub: 3.0ms (59.7% of total)
ival-neg: 2.0ms (39.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series8.0ms (0.2%)

Memory
-25.5MiB live, 11.8MiB allocated
Counts
10 → 180
Calls
Call 1
Inputs
#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())
#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())
#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())
#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())
#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())
#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())
#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())
#s(alt (-.f64 #s(literal 1 binary64) x) (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())
#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (- 1 x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- 1 x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- 1 x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) 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 x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- 1 x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 y)) x) (taylor 0 y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* y (- (/ 1 y) (+ 1 (/ x y)))) (taylor inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 y) (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1 (/ (- 1 x) y))))) (taylor -inf y) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- 1 y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (- 1 y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- 1 y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (- 1 y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<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 (- 1 y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (- (+ 1 (* -1 x)) y) (taylor 0 x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* -1 x)) (taylor 0 x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<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 (* -1 x) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) (+ 1 (/ y x)))) (taylor inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (- (/ 1 x) 1)) (taylor inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) (patch (-.f64 #s(approx (- 1 x) (neg.f64 x)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) (neg.f64 x)) (patch #s(approx (- 1 x) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 x) (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 x)) (patch #s(approx (- (- 1 x) y) (neg.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (neg.f64 y)) (patch #s(approx (- (- 1 x) y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (patch #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) x) (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) x) (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) x) (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt (-.f64 #s(literal 1 binary64) x) (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (* -1 (/ (- 1 y) x))))) (taylor -inf x) (#s(alt (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (patch (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- 1 (/ 1 x)))) (taylor -inf x) (#s(alt #s(approx (- 1 x) #s(literal 1 binary64)) (patch #s(approx (- 1 x) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify199.0ms (4.7%)

Memory
22.1MiB live, 172.8MiB allocated
Algorithm
egg-herbie
Rules
3 240×lower-fma.f64
3 240×lower-fma.f32
2 044×div-sub
1 884×lower-/.f32
1 884×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037664
1109664
2310664
3904664
42756664
54023664
65322664
75853664
86219664
96407664
106889664
116993664
127751664
08109664
Stop Event
iter limit
node limit
Counts
180 → 180
Calls
Call 1
Inputs
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite126.0ms (3%)

Memory
0.6MiB live, 202.6MiB allocated
Rules
5 728×lower-fma.f64
5 728×lower-fma.f32
4 306×lower-*.f64
4 306×lower-*.f32
3 716×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01558
02058
17858
256958
0820458
Stop Event
iter limit
node limit
iter limit
Counts
10 → 319
Calls
Call 1
Inputs
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
#s(approx (- 1 x) (neg.f64 x))
(neg.f64 x)
#s(approx (- (- 1 x) y) (neg.f64 x))
#s(approx (- (- 1 x) y) (neg.f64 y))
(neg.f64 y)
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
#s(approx (- 1 x) #s(literal 1 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval219.0ms (5.1%)

Memory
2.3MiB live, 121.7MiB allocated
Compiler

Compiled 7 769 to 984 computations (87.3% saved)

prune21.0ms (0.5%)

Memory
-5.6MiB live, 33.4MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New5381539
Fresh000
Picked055
Done000
Total5386544
Accuracy
100.0%
Counts
544 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.0%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
61.6%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
60.7%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
39.0%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.7%
#s(approx (- (- 1 x) y) (neg.f64 x))
23.3%
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 22 to 28 computations (-27.3% saved)

simplify11.0ms (0.3%)

Memory
18.2MiB live, 18.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- 1 x) #s(literal 1 binary64))
cost-diff0
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Rules
240×lower-fma.f64
240×lower-fma.f32
96×lower-*.f64
96×lower-+.f64
96×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
0717
11517
23117
36617
412617
522917
629117
732117
832317
032317
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)
Outputs
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(literal 1 binary64)

localize15.0ms (0.4%)

Memory
-25.0MiB live, 17.8MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy25.147505196068142
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
accuracy33.710328843873874
#s(approx (- 1 x) #s(literal 1 binary64))
Samples
12.0ms256×0valid
Compiler

Compiled 11 to 7 computations (36.4% saved)

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

series2.0ms (0%)

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

6 calls:

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

simplify181.0ms (4.2%)

Memory
9.6MiB live, 86.3MiB allocated
Algorithm
egg-herbie
Rules
3 240×lower-fma.f64
3 240×lower-fma.f32
2 044×div-sub
1 884×lower-/.f32
1 884×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037136
1109136
2310136
3904136
42756136
54023136
65322136
75853136
86219136
96407136
106889136
116993136
127751136
08109136
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
(- 1 x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(- (+ 1 (* -1 y)) x)
(* -1 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* y (- (/ 1 y) (+ 1 (/ x y))))
(* -1 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(- 1 y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
(- (+ 1 (* -1 x)) y)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(* -1 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* x (- (/ 1 x) (+ 1 (/ y x))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* -1 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
(- 1 x)
(-.f64 #s(literal 1 binary64) x)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 y)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* y (- (/ 1 y) (+ 1 (/ x y))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* y (+ 1 (* -1 (/ (- 1 x) y)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- 1 y)
(-.f64 #s(literal 1 binary64) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(- (+ 1 (* -1 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1
#s(literal 1 binary64)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(+ 1 (* -1 x))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* x (- (/ 1 x) (+ 1 (/ y x))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* x (- (/ 1 x) 1))
(-.f64 #s(literal 1 binary64) x)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 (* x (+ 1 (* -1 (/ (- 1 y) x)))))
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)
(* -1 (* x (- 1 (/ 1 x))))
(-.f64 #s(literal 1 binary64) x)

rewrite172.0ms (4%)

Memory
-15.4MiB live, 265.5MiB allocated
Rules
7 126×lower-fma.f64
7 126×lower-fma.f32
4 118×lower-*.f64
4 118×lower-*.f32
1 990×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
0716
14016
232316
3488016
0877916
Stop Event
iter limit
node limit
saturated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
Outputs
#<batchref>
#<batchref>

eval3.0ms (0.1%)

Memory
10.5MiB live, 10.5MiB allocated
Compiler

Compiled 190 to 19 computations (90% saved)

prune4.0ms (0.1%)

Memory
11.9MiB live, 11.9MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New38038
Fresh000
Picked011
Done055
Total38644
Accuracy
100.0%
Counts
44 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.0%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
61.6%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
60.7%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
39.0%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.7%
#s(approx (- (- 1 x) y) (neg.f64 x))
23.3%
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 49 to 43 computations (12.2% saved)

regimes13.0ms (0.3%)

Memory
-5.7MiB live, 32.5MiB allocated
Counts
7 → 1
Calls
Call 1
Inputs
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- (- 1 x) y) (neg.f64 x))
#s(approx (- (- 1 x) y) (neg.f64 y))
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Outputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Calls

4 calls:

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

Compiled 10 to 13 computations (-30% saved)

regimes12.0ms (0.3%)

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

4 calls:

4.0ms
x
3.0ms
y
3.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
2.0ms
(-.f64 #s(literal 1 binary64) x)
Results
AccuracySegmentsBranch
99.2%2x
98.4%2y
99.0%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
99.2%2(-.f64 #s(literal 1 binary64) x)
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes7.0ms (0.2%)

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

3 calls:

2.0ms
x
2.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
2.0ms
(-.f64 #s(literal 1 binary64) x)
Results
AccuracySegmentsBranch
98.6%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
91.3%2x
91.3%2(-.f64 #s(literal 1 binary64) x)
Compiler

Compiled 9 to 11 computations (-22.2% saved)

regimes10.0ms (0.2%)

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

2 calls:

7.0ms
y
2.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Results
AccuracySegmentsBranch
93.7%2y
97.0%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 6 to 7 computations (-16.7% saved)

regimes2.0ms (0.1%)

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

1 calls:

2.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Results
AccuracySegmentsBranch
96.6%3(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 5 to 5 computations (0% saved)

regimes7.0ms (0.2%)

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

4 calls:

2.0ms
y
2.0ms
x
2.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1.0ms
(-.f64 #s(literal 1 binary64) x)
Results
AccuracySegmentsBranch
59.8%2x
59.8%2(-.f64 #s(literal 1 binary64) x)
44.1%3y
59.8%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes7.0ms (0.2%)

Memory
-20.3MiB live, 18.1MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

4 calls:

3.0ms
x
1.0ms
y
1.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
1.0ms
(-.f64 #s(literal 1 binary64) x)
Results
AccuracySegmentsBranch
23.3%1y
23.3%1x
23.3%1(-.f64 #s(literal 1 binary64) x)
23.3%1(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 10 to 13 computations (-30% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000000000132607
3374.6748024929466
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999999995961
1.0
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-3707.2296675029556
0.9795224030993132
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000000000132607
6119709744.42937
0.0ms
-3707.2296675029556
0.9795224030993132
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000000000132607
6119709744.42937
Compiler

Compiled 8 to 10 computations (-25% saved)

simplify28.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
029156
141156
249156
351156
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(if (<=.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 2 binary64)) (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (-.f64 #s(approx (- 1 x) (neg.f64 x)) y))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 4503599627368677/4503599627370496 binary64)) (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -2000 binary64)) #s(approx (- (- 1 x) y) (neg.f64 y)) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -2000 binary64)) #s(approx (- (- 1 x) y) (neg.f64 y)) (if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 2 binary64)) #s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64))) #s(approx (- (- 1 x) y) (neg.f64 x))))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 2 binary64)) #s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64))) #s(approx (- (- 1 x) y) (neg.f64 x)))
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Outputs
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
(if (<=.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 2 binary64)) (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) (-.f64 #s(approx (- 1 x) (neg.f64 x)) y))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 4503599627368677/4503599627370496 binary64)) (-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -2000 binary64)) #s(approx (- (- 1 x) y) (neg.f64 y)) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -2000 binary64)) #s(approx (- (- 1 x) y) (neg.f64 y)) (if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 2 binary64)) #s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64))) #s(approx (- (- 1 x) y) (neg.f64 x))))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 2 binary64)) #s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64))) #s(approx (- (- 1 x) y) (neg.f64 x)))
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))

soundness1.4s (33.2%)

Memory
-124.1MiB live, 323.9MiB allocated
Rules
3 240×lower-fma.f64
3 240×lower-fma.f32
3 240×lower-fma.f64
3 240×lower-fma.f32
2 044×div-sub
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037136
1109136
2310136
3904136
42756136
54023136
65322136
75853136
86219136
96407136
106889136
116993136
127751136
08109136
037664
1109664
2310664
3904664
42756664
54023664
65322664
75853664
86219664
96407664
106889664
116993664
127751664
08109664
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 132 to 83 computations (37.1% saved)

preprocess81.0ms (1.9%)

Memory
26.1MiB live, 141.0MiB allocated
Remove

(sort x y)

Compiler

Compiled 216 to 84 computations (61.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...