Data.Colour.RGBSpace.HSV:hsv from colour-2.3.3, H

Time bar (total: 4.0s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

sample925.0ms (23.3%)

Memory
-0.1MiB live, 482.5MiB allocated
Samples
669.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 297.0ms
ival-mult: 181.0ms (60.9% of total)
ival-sub: 103.0ms (34.6% of total)
ival-true: 5.0ms (1.7% of total)
exact: 4.0ms (1.3% of total)
ival-assert: 3.0ms (1% of total)
Bogosity

explain94.0ms (2.4%)

Memory
2.0MiB live, 83.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(-.f64 #s(literal 1 binary64) y)
00-0-(*.f64 x (-.f64 #s(literal 1 binary64) y))
00-0-y
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
31.0ms512×0valid
Compiler

Compiled 42 to 24 computations (42.9% saved)

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

preprocess130.0ms (3.3%)

Memory
-21.4MiB live, 51.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
14026
210625
332325
451725
561225
055
075
1125
2225
3385
4835
51145
61545
72195
82655
93015
103075
03075
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 x (-.f64 #s(literal 1 binary64) y))
Outputs
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
Symmetry

(negabs x)

Compiler

Compiled 5 to 5 computations (0% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 5 to 5 computations (0% saved)

simplify10.0ms (0.3%)

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

Found 2 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
0711
11211
22211
33811
48311
511411
615411
721911
826511
930111
1030711
030711
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 x (-.f64 #s(literal 1 binary64) y))
x
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
Outputs
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
x
(-.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y

localize107.0ms (2.7%)

Memory
-1.7MiB live, 39.0MiB allocated
Localize:

Found 2 expressions of interest:

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

Compiled 24 to 12 computations (50% saved)

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

series4.0ms (0.1%)

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

6 calls:

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

simplify423.0ms (10.6%)

Memory
-10.3MiB live, 150.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025167
169146
2160146
3294146
4860146
52421146
63637146
74179146
84354146
94391146
104423146
115091146
125539146
135640146
145660146
155670146
165676146
175676146
185680146
195684146
206666146
08357146
Stop Event
iter limit
node limit
Counts
36 → 35
Calls
Call 1
Inputs
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
Outputs
x
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (neg.f64 x) y)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (neg.f64 x) y)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)
(fma.f64 (neg.f64 x) y x)

rewrite226.0ms (5.7%)

Memory
-12.9MiB live, 234.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
078
1258
21458
311498
098947
Stop Event
iter limit
node limit
iter limit
Counts
2 → 353
Calls
Call 1
Inputs
(*.f64 x (-.f64 #s(literal 1 binary64) y))
(-.f64 #s(literal 1 binary64) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval121.0ms (3%)

Memory
-9.5MiB live, 110.1MiB allocated
Compiler

Compiled 8 550 to 1 083 computations (87.3% saved)

prune7.0ms (0.2%)

Memory
30.2MiB live, 30.2MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New3862388
Fresh000
Picked011
Done000
Total3863389
Accuracy
100.0%
Counts
389 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 x (-.f64 #s(literal 1 binary64) y))
50.8%
(*.f64 x #s(approx (- 1 y) (neg.f64 y)))
51.6%
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
Compiler

Compiled 20 to 19 computations (5% saved)

simplify27.0ms (0.7%)

Memory
-29.3MiB live, 9.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 5 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0932
01232
12032
22432
32932
43732
54732
66232
76532
06532
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
x
#s(approx (- 1 y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 x #s(approx (- 1 y) (neg.f64 y)))
x
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y
Outputs
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)
x
#s(approx (- 1 y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 #s(approx (- 1 y) (neg.f64 y)) x)
x
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
y

localize38.0ms (1%)

Memory
-5.2MiB live, 34.1MiB allocated
Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x #s(approx (- 1 y) (neg.f64 y)))
accuracy0
(neg.f64 y)
accuracy31.764795815638504
#s(approx (- 1 y) (neg.f64 y))
accuracy0
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
accuracy31.175921060574975
#s(approx (- 1 y) #s(literal 1 binary64))
Samples
12.0ms256×0valid
Compiler

Compiled 56 to 18 computations (67.9% saved)

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

series4.0ms (0.1%)

Memory
9.0MiB live, 9.0MiB allocated
Counts
5 → 84
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch #s(approx (- 1 y) (neg.f64 y)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf y) (#s(alt #<batchref> (patch (neg.f64 y) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x #s(approx (- 1 y) (neg.f64 y))) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify404.0ms (10.2%)

Memory
-8.0MiB live, 153.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025358
169316
2160316
3294316
4857316
52448316
63658316
74190316
84365316
94402316
104434316
115102316
125549316
135650316
145670316
155680316
165686316
175686316
185690316
195694316
206679316
08378316
Stop Event
iter limit
node limit
Counts
84 → 82
Calls
Call 1
Inputs
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
x
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
(+ x (* -1 (* x y)))
1
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(+ 1 (* -1 y))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 (* x y))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* y (+ (* -1 x) (/ x y)))
(* -1 y)
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* y (- (/ 1 y) 1))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* x y))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 (* y (+ x (* -1 (/ x y)))))
(* -1 y)
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 (* y (- 1 (/ 1 y))))
(* -1 y)
(* -1 y)
(* -1 y)
(* -1 y)
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
(* x (- 1 y))
Outputs
x
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
x
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(*.f64 (neg.f64 x) y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(neg.f64 y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(-.f64 #s(literal 1 binary64) y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(neg.f64 y)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(*.f64 (-.f64 #s(literal 1 binary64) y) x)

rewrite313.0ms (7.9%)

Memory
26.4MiB live, 267.9MiB allocated
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0928
01228
13328
214928
3117825
0957525
Stop Event
iter limit
node limit
iter limit
Counts
5 → 137
Calls
Call 1
Inputs
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
#s(approx (- 1 y) #s(literal 1 binary64))
(*.f64 x #s(approx (- 1 y) (neg.f64 y)))
#s(approx (- 1 y) (neg.f64 y))
(neg.f64 y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval102.0ms (2.6%)

Memory
-7.0MiB live, 70.9MiB allocated
Compiler

Compiled 2 980 to 479 computations (83.9% saved)

prune8.0ms (0.2%)

Memory
-17.7MiB live, 25.8MiB allocated
Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2190219
Fresh000
Picked022
Done011
Total2193222
Accuracy
100.0%
Counts
222 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 x (-.f64 #s(literal 1 binary64) y))
50.8%
(*.f64 x #s(approx (- 1 y) (neg.f64 y)))
51.6%
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
Compiler

Compiled 40 to 31 computations (22.5% saved)

regimes8.0ms (0.2%)

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

4 calls:

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

Compiled 10 to 13 computations (-30% saved)

regimes8.0ms (0.2%)

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

4 calls:

3.0ms
(-.f64 #s(literal 1 binary64) y)
2.0ms
y
2.0ms
x
2.0ms
(*.f64 x (-.f64 #s(literal 1 binary64) y))
Results
AccuracySegmentsBranch
63.1%5x
98.2%3y
80.3%3(*.f64 x (-.f64 #s(literal 1 binary64) y))
98.2%3(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes6.0ms (0.2%)

Memory
-18.1MiB live, 21.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

4 calls:

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

Compiled 10 to 13 computations (-30% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6054304413452645
1405.6598494541972
0.0ms
-18.284957673673215
0.9999999999999982
Compiler

Compiled 8 to 10 computations (-25% saved)

simplify26.0ms (0.6%)

Memory
7.6MiB live, 87.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01747
12747
23047
33147
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 x (-.f64 #s(literal 1 binary64) y))
(if (<=.f64 (-.f64 #s(literal 1 binary64) y) #s(literal -10 binary64)) (*.f64 x #s(approx (- 1 y) (neg.f64 y))) (if (<=.f64 (-.f64 #s(literal 1 binary64) y) #s(literal 2 binary64)) (*.f64 x #s(approx (- 1 y) #s(literal 1 binary64))) (*.f64 x #s(approx (- 1 y) (neg.f64 y)))))
(*.f64 x #s(approx (- 1 y) #s(literal 1 binary64)))
Outputs
(*.f64 (-.f64 #s(literal 1 binary64) y) x)
(if (<=.f64 (-.f64 #s(literal 1 binary64) y) #s(literal -10 binary64)) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x) (if (<=.f64 (-.f64 #s(literal 1 binary64) y) #s(literal 2 binary64)) (*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x) (*.f64 #s(approx (- 1 y) (neg.f64 y)) x)))
(*.f64 #s(approx (- 1 y) #s(literal 1 binary64)) x)

soundness948.0ms (23.8%)

Memory
8.6MiB live, 168.3MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025167
169146
2160146
3294146
4860146
52421146
63637146
74179146
84354146
94391146
104423146
115091146
125539146
135640146
145660146
155670146
165676146
175676146
185680146
195684146
206666146
08357146
Stop Event
done
iter limit
node limit
Compiler

Compiled 57 to 30 computations (47.4% saved)

preprocess32.0ms (0.8%)

Memory
2.6MiB live, 120.1MiB allocated
Remove

(negabs x)

Compiler

Compiled 134 to 76 computations (43.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...