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

Time bar (total: 4.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

Compiled 7 to 7 computations (0% saved)

sample990.0ms (23.6%)

Memory
-95.2MiB live, 520.0MiB allocated
Samples
663.0ms8 252×0valid
0.0ms1valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 100.0ms
ival-sub: 87.0ms (87.1% of total)
ival-true: 5.0ms (5% of total)
exact: 4.0ms (4% of total)
ival-assert: 3.0ms (3% of total)
adjust: 0.0ms (0% of total)
Bogosity

explain125.0ms (3%)

Memory
0.5MiB live, 78.9MiB 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
57.0ms510×0valid
0.0ms1valid
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sub: 5.0ms (88% of total)
adjust: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess40.0ms (1%)

Memory
19.5MiB live, 58.5MiB 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.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 5 to 5 computations (0% saved)

simplify42.0ms (1%)

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

localize11.0ms (0.3%)

Memory
16.1MiB live, 16.1MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.00390625
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Samples
7.0ms255×0valid
0.0ms1valid
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 (76.3% of total)
adjust: 0.0ms (0% 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
2.7MiB live, 2.7MiB 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
x
@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
@0
((- (- 1 x) y) (- 1 x))

simplify174.0ms (4.1%)

Memory
-6.5MiB live, 66.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
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)

rewrite211.0ms (5%)

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

eval76.0ms (1.8%)

Memory
8.9MiB live, 59.8MiB allocated
Compiler

Compiled 5 899 to 742 computations (87.4% saved)

prune17.0ms (0.4%)

Memory
-19.0MiB live, 20.1MiB allocated
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New3065311
Fresh000
Picked011
Done000
Total3066312
Accuracy
100.0%
Counts
312 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
77.1%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
60.8%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
62.0%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
38.1%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.6%
#s(approx (- (- 1 x) y) (neg.f64 x))
Compiler

Compiled 43 to 51 computations (-18.6% saved)

simplify17.0ms (0.4%)

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

localize20.0ms (0.5%)

Memory
18.8MiB live, 18.8MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
accuracy33.92658104355525
#s(approx (- 1 x) #s(literal 1 binary64))
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy24.350152385630228
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
accuracy0
(neg.f64 y)
accuracy39.62225534930717
#s(approx (- (- 1 x) y) (neg.f64 y))
accuracy0
(neg.f64 x)
accuracy37.99529518384618
#s(approx (- (- 1 x) y) (neg.f64 x))
accuracy0
(neg.f64 x)
accuracy0.00390625
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
accuracy28.446205920982205
#s(approx (- 1 x) (neg.f64 x))
Samples
13.0ms255×0valid
0.0ms1valid
Compiler

Compiled 50 to 9 computations (82% saved)

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

series5.0ms (0.1%)

Memory
5.0MiB live, 5.0MiB 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
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
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
y
@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))

simplify312.0ms (7.4%)

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

rewrite157.0ms (3.7%)

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

eval119.0ms (2.8%)

Memory
0.5MiB live, 122.5MiB allocated
Compiler

Compiled 7 769 to 984 computations (87.3% saved)

prune15.0ms (0.4%)

Memory
-25.7MiB live, 60.4MiB allocated
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New5381539
Fresh000
Picked055
Done011
Total5387545
Accuracy
100.0%
Counts
545 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
77.1%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
60.8%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
62.0%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
38.1%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.6%
#s(approx (- (- 1 x) y) (neg.f64 x))
23.9%
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 27 to 33 computations (-22.2% saved)

simplify12.0ms (0.3%)

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

localize13.0ms (0.3%)

Memory
-12.0MiB live, 27.0MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy24.350152385630228
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
accuracy33.92658104355525
#s(approx (- 1 x) #s(literal 1 binary64))
Samples
9.0ms255×0valid
0.0ms1valid
Compiler

Compiled 11 to 7 computations (36.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-sub: 3.0ms (77.7% of total)
adjust: 0.0ms (0% 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.6MiB live, 3.6MiB 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))

simplify183.0ms (4.4%)

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

rewrite201.0ms (4.8%)

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

eval8.0ms (0.2%)

Memory
-26.7MiB live, 9.5MiB allocated
Compiler

Compiled 190 to 19 computations (90% saved)

prune4.0ms (0.1%)

Memory
12.2MiB live, 12.2MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New38038
Fresh000
Picked011
Done066
Total38745
Accuracy
100.0%
Counts
45 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
77.1%
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
60.8%
(-.f64 #s(approx (- 1 x) #s(literal 1 binary64)) y)
62.0%
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
38.1%
#s(approx (- (- 1 x) y) (neg.f64 y))
40.6%
#s(approx (- (- 1 x) y) (neg.f64 x))
23.9%
#s(approx (- (- 1 x) y) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 54 to 48 computations (11.1% saved)

regimes14.0ms (0.3%)

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

6.0ms
x
3.0ms
y
3.0ms
(-.f64 (-.f64 #s(literal 1 binary64) x) y)
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)

regimes11.0ms (0.3%)

Memory
25.6MiB live, 25.6MiB 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
#s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(approx (- 1 x) (neg.f64 x)) y)
Calls

4 calls:

3.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
98.3%2x
98.9%2y
98.6%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
98.3%2(-.f64 #s(literal 1 binary64) x)
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes8.0ms (0.2%)

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

2 calls:

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

Compiled 6 to 7 computations (-16.7% saved)

regimes7.0ms (0.2%)

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

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
76.2%2x
70.0%2(-.f64 #s(literal 1 binary64) x)
97.6%2(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 9 to 11 computations (-22.2% 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.4%3(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 5 to 5 computations (0% saved)

regimes12.0ms (0.3%)

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

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

Compiled 10 to 13 computations (-30% saved)

regimes5.0ms (0.1%)

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

1.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.9%1y
23.9%1(-.f64 #s(literal 1 binary64) x)
23.9%1x
23.9%1(-.f64 (-.f64 #s(literal 1 binary64) x) y)
Compiler

Compiled 10 to 13 computations (-30% saved)

bsearch13.0ms (0.3%)

Memory
-13.8MiB live, 24.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
9.0ms
1.2835769435739213e-6
5.004413918965051
Samples
4.0ms141×0valid
0.0ms1valid
0.0ms2valid
Compiler

Compiled 89 to 118 computations (-32.6% saved)

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

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999933659599
1.0
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-4.004413918965051
0.9999999933659599
Compiler

Compiled 8 to 10 computations (-25% saved)

bsearch0.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000001054177137
14.83870583734105
0.0ms
-4.004413918965051
0.9999999933659599
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.0000001054177137
14.83870583734105
Compiler

Compiled 8 to 10 computations (-25% saved)

simplify24.0ms (0.6%)

Memory
27.1MiB live, 66.0MiB 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 y #s(literal 1 binary64)) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (-.f64 #s(approx (- 1 x) (neg.f64 x)) y))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 9007199194986871/9007199254740992 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 -4 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 -4 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 y #s(literal 1 binary64)) #s(approx (- (- 1 x) y) (-.f64 #s(literal 1 binary64) x)) (-.f64 #s(approx (- 1 x) (neg.f64 x)) y))
(if (<=.f64 (-.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal 9007199194986871/9007199254740992 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 -4 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 -4 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.3s (30.4%)

Memory
-9.0MiB live, 345.3MiB 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 130 to 83 computations (36.2% saved)

preprocess65.0ms (1.6%)

Memory
3.2MiB live, 89.4MiB allocated
Remove

(sort x y)

Compiler

Compiled 212 to 84 computations (60.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...