Prelude:atanh from fay-base-0.20.0.1

Time bar (total: 4.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze1.0ms (0%)

Memory
3.1MiB live, 3.1MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
50%50%50%0%0%0%0%2
75%75%25%0%0%0%0%3
87.5%87.5%12.5%0%0%0%0%4
93.8%93.7%6.2%0%0%0%0%5
96.9%96.8%3.1%0%0%0%0%6
98.4%98.4%1.6%0%0%0%0%7
99.2%99.2%0.8%0%0%0%0%8
99.6%99.6%0.4%0%0%0%0%9
99.8%99.8%0.2%0%0%0%0%10
99.9%99.9%0.1%0%0%0%0%11
100%99.9%0%0%0%0%0%12
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample607.0ms (12.8%)

Memory
14.6MiB live, 1 203.7MiB allocated
Samples
396.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 186.0ms
ival-add: 73.0ms (39.3% of total)
ival-div: 52.0ms (28% of total)
ival-sub: 48.0ms (25.9% of total)
ival-true: 5.0ms (2.7% of total)
exact: 5.0ms (2.7% of total)
ival-assert: 3.0ms (1.6% of total)
Bogosity

explain54.0ms (1.1%)

Memory
5.3MiB live, 134.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 x #s(literal 1 binary64))
00-0-(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
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
25.0ms512×0valid
Compiler

Compiled 56 to 24 computations (57.1% saved)

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

preprocess29.0ms (0.6%)

Memory
14.3MiB live, 53.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
12114
24614
310014
422814
547714
665614
768914
057
087
1137
2177
3227
4297
5397
6557
7767
81067
91567
101967
112927
124697
136477
06477
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Outputs
(/.f64 (-.f64 #s(literal -1 binary64) x) (-.f64 x #s(literal 1 binary64)))
Compiler

Compiled 7 to 5 computations (28.6% saved)

eval1.0ms (0%)

Memory
-41.4MiB live, 0.6MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune2.0ms (0%)

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

Compiled 7 to 5 computations (28.6% saved)

simplify13.0ms (0.3%)

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

Found 3 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0515
0815
11315
21715
32215
42915
53915
65515
77615
810615
915615
1019615
1129215
1246915
1364715
064715
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(+.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
Outputs
(/.f64 (-.f64 #s(literal -1 binary64) x) (-.f64 x #s(literal 1 binary64)))
(-.f64 x #s(literal -1 binary64))
x
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)

localize17.0ms (0.4%)

Memory
-0.5MiB live, 39.0MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0
(+.f64 x #s(literal 1 binary64))
accuracy0.015625
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Samples
11.0ms256×0valid
Compiler

Compiled 32 to 12 computations (62.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 2.0ms (43.7% of total)
ival-sub: 1.0ms (21.8% of total)
ival-div: 1.0ms (21.8% 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
-33.9MiB live, 5.2MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify159.0ms (3.3%)

Memory
24.9MiB live, 181.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040165
1114150
2255150
3589146
41218146
52790146
65008146
76806146
87502146
97693146
107717146
117728146
08003140
Stop Event
iter limit
node limit
Counts
36 → 34
Calls
Call 1
Inputs
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 x)
(+ 1 x)
(+ 1 x)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x) #s(literal -2 binary64)) x))
x
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x) #s(literal -2 binary64)) x))
x
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
(-.f64 x #s(literal -1 binary64))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)

rewrite132.0ms (2.8%)

Memory
-19.2MiB live, 267.5MiB allocated
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0513
0813
14113
229413
341017
0100147
Stop Event
iter limit
node limit
iter limit
Counts
3 → 489
Calls
Call 1
Inputs
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(+.f64 x #s(literal 1 binary64))
(-.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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval60.0ms (1.3%)

Memory
17.8MiB live, 136.8MiB allocated
Compiler

Compiled 12 111 to 1 076 computations (91.1% saved)

prune14.0ms (0.3%)

Memory
2.7MiB live, 40.4MiB allocated
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New5167523
Fresh000
Picked011
Done000
Total5168524
Accuracy
100.0%
Counts
524 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.7%
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
100.0%
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
44.6%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
56.7%
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
44.1%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
55.7%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
Compiler

Compiled 195 to 133 computations (31.8% saved)

simplify48.0ms (1%)

Memory
-6.7MiB live, 31.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 10 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01792
02492
13692
25392
38492
411892
514092
618992
725792
835092
951892
1066492
1178392
1299992
13116492
14123792
15125992
16125992
0125992
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
#s(literal -1 binary64)
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(literal -1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)
Outputs
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
#s(literal -1 binary64)
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(literal -1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)

localize44.0ms (0.9%)

Memory
-11.4MiB live, 70.4MiB allocated
Localize:

Found 10 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
accuracy0
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
accuracy35.468407985807524
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
accuracy0
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
accuracy34.86696850624016
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
accuracy35.777448592808
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
accuracy28.324480964142985
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
accuracy0
(/.f64 #s(literal 2 binary64) x)
accuracy0
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
accuracy27.683128686373152
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
Samples
28.0ms256×0valid
Compiler

Compiled 167 to 34 computations (79.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-div: 6.0ms (33.1% of total)
ival-add: 6.0ms (33.1% of total)
ival-mult: 3.0ms (16.5% of total)
ival-sub: 2.0ms (11% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.1%)

Memory
12.3MiB live, 12.3MiB allocated
Counts
10 → 120
Calls
Call 1
Inputs
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
((/ (+ x 1) (- 1 x)) (- -1 (/ 2 x)) (/ 2 x) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (+ (* 2 x) 1) (/ (+ x 1) (- 1 x)) (+ (* (+ (* 2 x) 2) x) 1) (+ (* 2 x) 2))
1.0ms
x
@inf
((/ (+ x 1) (- 1 x)) (- -1 (/ 2 x)) (/ 2 x) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (+ (* 2 x) 1) (/ (+ x 1) (- 1 x)) (+ (* (+ (* 2 x) 2) x) 1) (+ (* 2 x) 2))
1.0ms
x
@-inf
((/ (+ x 1) (- 1 x)) (- -1 (/ 2 x)) (/ 2 x) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (/ (+ x 1) (- 1 x)) (+ (* 2 x) 1) (/ (+ x 1) (- 1 x)) (+ (* (+ (* 2 x) 2) x) 1) (+ (* 2 x) 2))

simplify216.0ms (4.6%)

Memory
1.7MiB live, 194.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045757
1134733
2312714
3626694
41999694
54929694
08212631
Stop Event
iter limit
node limit
Counts
120 → 120
Calls
Call 1
Inputs
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
(/ -2 x)
(/ (- (* -1 x) 2) x)
(/ (- (* -1 x) 2) x)
(/ (- (* -1 x) 2) x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 (* 2 x))
(+ 1 (* 2 x))
(+ 1 (* 2 x))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* 2 x))))
2
(+ 2 (* 2 x))
(+ 2 (* 2 x))
(+ 2 (* 2 x))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(* -1 (+ 1 (* 2 (/ 1 x))))
(* -1 (+ 1 (* 2 (/ 1 x))))
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
(* 2 x)
(* x (+ 2 (/ 1 x)))
(* x (+ 2 (/ 1 x)))
(* x (+ 2 (/ 1 x)))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
(* 2 (pow x 2))
(* (pow x 2) (+ 2 (* 2 (/ 1 x))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 1 (pow x 2)))))
(* 2 x)
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(* -1 (+ 1 (* 2 (/ 1 x))))
(* -1 (+ 1 (* 2 (/ 1 x))))
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
(* 2 x)
(* x (+ 2 (/ 1 x)))
(* x (+ 2 (/ 1 x)))
(* x (+ 2 (/ 1 x)))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
(* 2 (pow x 2))
(* (pow x 2) (+ 2 (* 2 (/ 1 x))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 1 (pow x 2)))))
(* 2 x)
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
Outputs
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(/.f64 #s(literal -2 binary64) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 2 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(literal -1 binary64)
(/.f64 (-.f64 #s(literal -2 binary64) x) x)
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(fma.f64 (/.f64 #s(literal -2 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (-.f64 x #s(literal -1 binary64)) x #s(literal 1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))

rewrite381.0ms (8%)

Memory
10.5MiB live, 297.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01781
02481
111581
285681
0864981
Stop Event
iter limit
node limit
iter limit
Counts
10 → 324
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval73.0ms (1.5%)

Memory
-12.5MiB live, 102.5MiB allocated
Compiler

Compiled 11 237 to 1 255 computations (88.8% saved)

prune44.0ms (0.9%)

Memory
-12.5MiB live, 33.2MiB allocated
Pruning

8 alts after pruning (2 fresh and 6 done)

PrunedKeptTotal
New4440444
Fresh022
Picked055
Done011
Total4448452
Accuracy
100.0%
Counts
452 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.7%
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
100.0%
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
44.6%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
56.7%
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
44.1%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
55.7%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
Compiler

Compiled 101 to 69 computations (31.7% saved)

simplify210.0ms (4.4%)

Memory
14.2MiB live, 206.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(pow.f64 x #s(literal 4 binary64))
cost-diff0
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
cost-diff0
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))))
cost-diff0
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
cost-diff0
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
cost-diff0
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018100
032100
160100
2138100
3405100
41319100
54639100
08246100
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
#s(literal 1 binary64)
(pow.f64 x #s(literal 4 binary64))
x
#s(literal 4 binary64)
(*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))
(-.f64 #s(literal 1 binary64) x)
(fma.f64 x x #s(literal 1 binary64))
Outputs
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal 2 binary64)
x
#s(literal 1 binary64)
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) (-.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
#s(literal 1 binary64)
(pow.f64 x #s(literal 4 binary64))
x
#s(literal 4 binary64)
(*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
(fma.f64 x x #s(literal 1 binary64))

localize78.0ms (1.6%)

Memory
6.7MiB live, 84.5MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.015625
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
accuracy0.03515625
(*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))
accuracy28.208152961588546
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))))
accuracy0
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
accuracy0
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
accuracy0.0234375
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
accuracy34.85165570085485
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
Samples
48.0ms256×0valid
Compiler

Compiled 201 to 41 computations (79.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-mult: 7.0ms (28.7% of total)
ival-add: 6.0ms (24.6% of total)
ival-div: 4.0ms (16.4% of total)
ival-pow: 4.0ms (16.4% of total)
ival-sub: 2.0ms (8.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.2%)

Memory
15.6MiB live, 15.6MiB allocated
Counts
10 → 120
Calls
Call 1
Inputs
#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
2.0ms
x
@inf
((/ (+ x 1) (- 1 x)) (+ (* (+ (* (+ (* 2 x) 2) x) 2) x) 1) (+ (* (+ (* 2 x) 2) x) 2) (+ (* 2 x) 2) (/ (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 x)) (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 (pow x 4)) (pow x 4) (* (- 1 x) (+ (* x x) 1)) (- 1 x))
2.0ms
x
@0
((/ (+ x 1) (- 1 x)) (+ (* (+ (* (+ (* 2 x) 2) x) 2) x) 1) (+ (* (+ (* 2 x) 2) x) 2) (+ (* 2 x) 2) (/ (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 x)) (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 (pow x 4)) (pow x 4) (* (- 1 x) (+ (* x x) 1)) (- 1 x))
2.0ms
x
@-inf
((/ (+ x 1) (- 1 x)) (+ (* (+ (* (+ (* 2 x) 2) x) 2) x) 1) (+ (* (+ (* 2 x) 2) x) 2) (+ (* 2 x) 2) (/ (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 x)) (/ (- 1 (pow x 4)) (* (- 1 x) (+ (* x x) 1))) (- 1 (pow x 4)) (pow x 4) (* (- 1 x) (+ (* x x) 1)) (- 1 x))

simplify221.0ms (4.7%)

Memory
-17.5MiB live, 261.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
099714
1303668
2916660
33323638
46907638
08203578
Stop Event
iter limit
node limit
Counts
120 → 118
Calls
Call 1
Inputs
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
2
(+ 2 (* 2 x))
(+ 2 (* x (+ 2 (* 2 x))))
(+ 2 (* x (+ 2 (* 2 x))))
2
(+ 2 (* 2 x))
(+ 2 (* 2 x))
(+ 2 (* 2 x))
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
1
(+ 1 x)
(+ 1 x)
(+ 1 x)
1
(+ 1 (* -1 (pow x 4)))
(+ 1 (* -1 (pow x 4)))
(+ 1 (* -1 (pow x 4)))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
1
(+ 1 (* -1 x))
(+ 1 (* x (- x 1)))
(+ 1 (* x (- (* x (+ 1 (* -1 x))) 1)))
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
(* 2 (pow x 3))
(* (pow x 3) (+ 2 (* 2 (/ 1 x))))
(* (pow x 3) (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))))
(* (pow x 3) (+ 2 (+ (* 2 (/ 1 x)) (+ (/ 1 (pow x 3)) (/ 2 (pow x 2))))))
(* 2 (pow x 2))
(* (pow x 2) (+ 2 (* 2 (/ 1 x))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))))
(* 2 x)
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* -1 (pow x 4))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
(* -1 (pow x 3))
(* (pow x 3) (- (/ 1 x) 1))
(* (pow x 3) (- (/ 1 x) (+ 1 (/ 1 (pow x 2)))))
(* (pow x 3) (- (+ (/ 1 x) (/ 1 (pow x 3))) (+ 1 (/ 1 (pow x 2)))))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
(* 2 (pow x 3))
(* (pow x 3) (+ 2 (* 2 (/ 1 x))))
(* -1 (* (pow x 3) (- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 2)))
(* -1 (* (pow x 3) (- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 1 (pow x 2)))) x)) 2)))
(* 2 (pow x 2))
(* (pow x 2) (+ 2 (* 2 (/ 1 x))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))))
(* (pow x 2) (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))))
(* 2 x)
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
(* x (+ 2 (* 2 (/ 1 x))))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* -1 (pow x 4))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(* (pow x 4) (- (/ 1 (pow x 4)) 1))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
(* -1 (pow x 3))
(* -1 (* (pow x 3) (- 1 (/ 1 x))))
(* -1 (* (pow x 3) (+ 1 (* -1 (/ (- 1 (/ 1 x)) x)))))
(* -1 (* (pow x 3) (+ 1 (* -1 (/ (+ 1 (* -1 (/ (- 1 (/ 1 x)) x))) x)))))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 2 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
#s(literal 2 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal 1 binary64)
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(fma.f64 (-.f64 x #s(literal 1 binary64)) x #s(literal 1 binary64))
(*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 (/.f64 (-.f64 #s(literal -2 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x)) x) #s(literal 1 binary64))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 2 binary64))
(*.f64 (fma.f64 x x x) (*.f64 #s(literal 2 binary64) x))
(*.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 (/.f64 (-.f64 #s(literal -2 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x)) x) #s(literal 1 binary64))
x
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
(neg.f64 (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 (neg.f64 x) #s(literal 3 binary64))
(fma.f64 x x (pow.f64 (neg.f64 x) #s(literal 3 binary64)))
(*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) x) x #s(literal -1 binary64)) x)
(*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 (/.f64 (-.f64 #s(literal -2 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x)) x) #s(literal 1 binary64))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 2 binary64))
(*.f64 (fma.f64 x x x) (*.f64 #s(literal 2 binary64) x))
(*.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x)
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 (/.f64 (-.f64 #s(literal -2 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x)) x) #s(literal 1 binary64))
x
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
(+.f64 #s(literal 1 binary64) x)
(neg.f64 (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(pow.f64 (neg.f64 x) #s(literal 3 binary64))
(fma.f64 x x (pow.f64 (neg.f64 x) #s(literal 3 binary64)))
(*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) x) x #s(literal -1 binary64)) x)
(*.f64 (fma.f64 x x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)

rewrite161.0ms (3.4%)

Memory
-6.7MiB live, 268.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01890
03290
115768
2129068
0839568
Stop Event
iter limit
node limit
iter limit
Counts
10 → 830
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64))
(fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64))
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64)))
(pow.f64 x #s(literal 4 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))
(-.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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval192.0ms (4.1%)

Memory
19.6MiB live, 300.0MiB allocated
Compiler

Compiled 32 126 to 3 331 computations (89.6% saved)

prune17.0ms (0.4%)

Memory
0.4MiB live, 79.0MiB allocated
Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New1 04611 047
Fresh000
Picked112
Done066
Total1 04781 055
Accuracy
100.0%
Counts
1 055 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
71.8%
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
100.0%
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
44.6%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
56.7%
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
44.1%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
55.7%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
Compiler

Compiled 95 to 67 computations (29.5% saved)

simplify228.0ms (4.8%)

Memory
14.1MiB live, 256.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 x #s(literal 1 binary64))
cost-diff0
(fma.f64 x x #s(literal -1 binary64))
cost-diff128
(*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
cost-diff576
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
01432
12632
26129
314827
438327
5171827
6549727
0842126
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
(fma.f64 x x #s(literal -1 binary64))
x
#s(literal -1 binary64)
(*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(-.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
Outputs
(/.f64 (-.f64 #s(literal -1 binary64) x) (-.f64 x #s(literal 1 binary64)))
(fma.f64 x x #s(literal -1 binary64))
x
#s(literal -1 binary64)
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(-.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)

localize172.0ms (3.6%)

Memory
0.6MiB live, 39.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 x #s(literal 1 binary64))
accuracy0
(-.f64 #s(literal 1 binary64) x)
accuracy0.01171875
(*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
accuracy17.89479128092816
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
Samples
165.0ms256×0valid
Compiler

Compiled 68 to 19 computations (72.1% saved)

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

series7.0ms (0.1%)

Memory
-29.9MiB live, 7.7MiB allocated
Counts
5 → 60
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 x x #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (-.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify130.0ms (2.7%)

Memory
2.7MiB live, 167.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058297
1161276
2402276
3845264
42537264
55734264
08079242
Stop Event
iter limit
node limit
Counts
60 → 58
Calls
Call 1
Inputs
1
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 2 x))))))
-1
(- (* 2 x) 1)
(- (* x (+ 2 (* -1 x))) 1)
(- (* x (+ 2 (* -1 x))) 1)
-1
(- (pow x 2) 1)
(- (pow x 2) 1)
(- (pow x 2) 1)
-1
(- x 1)
(- x 1)
(- x 1)
1
(+ 1 (* -1 x))
(+ 1 (* -1 x))
(+ 1 (* -1 x))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) (pow x 2))) (+ 1 (* 2 (/ 1 x))))
(* -1 (pow x 2))
(* (pow x 2) (- (* 2 (/ 1 x)) 1))
(* (pow x 2) (- (* 2 (/ 1 x)) (+ 1 (/ 1 (pow x 2)))))
(* (pow x 2) (- (* 2 (/ 1 x)) (+ 1 (/ 1 (pow x 2)))))
(pow x 2)
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
x
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* x (- 1 (/ 1 x)))
(* -1 x)
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
(* x (- (/ 1 x) 1))
-1
(* -1 (+ 1 (* 2 (/ 1 x))))
(- (* -1 (/ (+ 2 (* 2 (/ 1 x))) x)) 1)
(- (* -1 (/ (+ 2 (+ (* 2 (/ 1 x)) (/ 2 (pow x 2)))) x)) 1)
(* -1 (pow x 2))
(* (pow x 2) (- (* 2 (/ 1 x)) 1))
(* (pow x 2) (- (* -1 (/ (- (/ 1 x) 2) x)) 1))
(* (pow x 2) (- (* -1 (/ (- (/ 1 x) 2) x)) 1))
(pow x 2)
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
(* (pow x 2) (- 1 (/ 1 (pow x 2))))
x
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* -1 (* x (- (/ 1 x) 1)))
(* -1 x)
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
(* -1 (* x (- 1 (/ 1 x))))
Outputs
#s(literal 1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
#s(literal -1 binary64)
(fma.f64 #s(literal 2 binary64) x #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
#s(literal -1 binary64)
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
#s(literal -1 binary64)
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x) #s(literal -2 binary64)) x))
(*.f64 (neg.f64 x) x)
(*.f64 (-.f64 #s(literal 2 binary64) x) x)
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(*.f64 x x)
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
x
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
#s(literal -1 binary64)
(-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x))
(-.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 2 binary64) x) #s(literal -2 binary64)) x) #s(literal -2 binary64)) x))
(*.f64 (neg.f64 x) x)
(*.f64 (-.f64 #s(literal 2 binary64) x) x)
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))
(*.f64 x x)
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
(fma.f64 x x #s(literal -1 binary64))
x
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
(-.f64 x #s(literal 1 binary64))
(neg.f64 x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)
(-.f64 #s(literal 1 binary64) x)

rewrite162.0ms (3.4%)

Memory
-1.9MiB live, 274.9MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0829
01429
16624
254024
3755224
0828724
Stop Event
iter limit
node limit
iter limit
Counts
5 → 920
Calls
Call 1
Inputs
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
(*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(fma.f64 x x #s(literal -1 binary64))
(-.f64 x #s(literal 1 binary64))
(-.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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval143.0ms (3%)

Memory
6.2MiB live, 312.0MiB allocated
Compiler

Compiled 23 451 to 2 574 computations (89% saved)

prune19.0ms (0.4%)

Memory
33.9MiB live, 72.2MiB allocated
Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New9771978
Fresh000
Picked101
Done077
Total9788986
Accuracy
100.0%
Counts
986 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
71.9%
(/.f64 (fma.f64 x x #s(literal -1 binary64)) #s(approx (* (- x 1) (- 1 x)) (fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))))
100.0%
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
44.6%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
45.5%
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
56.7%
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
44.1%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
55.7%
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
Compiler

Compiled 234 to 112 computations (52.1% saved)

regimes9.0ms (0.2%)

Memory
-17.5MiB live, 20.6MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
(/.f64 (fma.f64 x x #s(literal -1 binary64)) #s(approx (* (- x 1) (- 1 x)) (fma.f64 (-.f64 #s(literal 2 binary64) x) x #s(literal -1 binary64))))
(/.f64 (fma.f64 x x #s(literal -1 binary64)) (*.f64 (-.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)))
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 x x #s(literal 1 binary64)))) (-.f64 #s(literal 1 binary64) x))
Outputs
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Calls

2 calls:

5.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
4.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 8 to 6 computations (25% saved)

regimes5.0ms (0.1%)

Memory
14.3MiB live, 14.3MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
Outputs
#s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
Calls

2 calls:

3.0ms
x
2.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Results
AccuracySegmentsBranch
99.4%3x
99.4%2(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 8 to 6 computations (25% saved)

regimes2.0ms (0%)

Memory
5.8MiB live, 5.8MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
Outputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64)))
Calls

1 calls:

2.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Results
AccuracySegmentsBranch
99.2%2(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes2.0ms (0%)

Memory
5.1MiB live, 5.1MiB allocated
Counts
3 → 2
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
Outputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64)))
Calls

1 calls:

1.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Results
AccuracySegmentsBranch
98.8%2(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes7.0ms (0.1%)

Memory
-39.6MiB live, 4.9MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
Outputs
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64))
Calls

1 calls:

7.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Results
AccuracySegmentsBranch
98.3%2(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes3.0ms (0.1%)

Memory
8.5MiB live, 8.5MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

2 calls:

1.0ms
x
1.0ms
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Results
AccuracySegmentsBranch
55.7%1x
55.7%1(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 8 to 6 computations (25% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.9998123325639602
0.9893700181168921
Compiler

Compiled 10 to 9 computations (10% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.9998123325639602
0.9893700181168921
Compiler

Compiled 10 to 9 computations (10% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.9998123325639602
0.9893700181168921
Compiler

Compiled 10 to 9 computations (10% saved)

bsearch16.0ms (0.3%)

Memory
-3.8MiB live, 33.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
15.0ms
-0.9998123325639602
0.9893700181168921
Samples
4.0ms240×0valid
Compiler

Compiled 280 to 249 computations (11.1% saved)

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

simplify25.0ms (0.5%)

Memory
31.7MiB live, 69.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
028147
136147
245147
351147
455147
556147
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) x)) #s(literal -20240225330731/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))
Outputs
(/.f64 (+.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 (/.f64 (+.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (-.f64 #s(literal -1 binary64) (/.f64 #s(literal 2 binary64) x))) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) (fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))))
(if (<=.f64 (/.f64 (+.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) #s(literal -20240225330731/101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64)) #s(approx (/ (+ x 1) (- 1 x)) #s(literal 1 binary64)))
#s(approx (/ (+ x 1) (- 1 x)) #s(literal -1 binary64))

soundness933.0ms (19.7%)

Memory
-9.6MiB live, 261.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040165
1114150
2255150
3589146
41218146
52790146
65008146
76806146
87502146
97693146
107717146
117728146
08003140
Stop Event
fuel
iter limit
node limit
Compiler

Compiled 175 to 58 computations (66.9% saved)

preprocess79.0ms (1.7%)

Memory
-7.9MiB live, 175.4MiB allocated
Compiler

Compiled 308 to 68 computations (77.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...