Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2, H

Time bar (total: 3.9s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

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

Compiled 9 to 8 computations (11.1% saved)

sample825.0ms (21.1%)

Memory
45.7MiB live, 902.1MiB allocated
Samples
412.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 237.0ms
ival-mult: 122.0ms (51.4% of total)
ival-div: 57.0ms (24% of total)
ival-sub: 40.0ms (16.9% of total)
exact: 9.0ms (3.8% of total)
ival-true: 6.0ms (2.5% of total)
ival-assert: 3.0ms (1.3% of total)
Bogosity

explain205.0ms (5.3%)

Memory
-6.7MiB live, 74.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-#s(literal 6 binary64)
00-0-#s(literal 3 binary64)
00-0-(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
00-0-(*.f64 x x)
00-0-(-.f64 (*.f64 x x) #s(literal 3 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
124.0ms512×0valid
Compiler

Compiled 47 to 22 computations (53.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 113.0ms
ival-mult: 106.0ms (94% of total)
ival-sub: 3.0ms (2.7% of total)
ival-div: 3.0ms (2.7% of total)
exact: 1.0ms (0.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess98.0ms (2.5%)

Memory
-26.3MiB live, 12.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
13114
26914
316614
429214
537114
639714
740514
067
097
1167
2227
3247
0246
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
Outputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
Symmetry

(abs x)

Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify3.0ms (0.1%)

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

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
cost-diff128
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
0918
11618
22218
32418
02416
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(-.f64 (*.f64 x x) #s(literal 3 binary64))
(*.f64 x x)
x
#s(literal 3 binary64)
#s(literal 6 binary64)
Outputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(-.f64 (*.f64 x x) #s(literal 3 binary64))
(fma.f64 x x #s(literal -3 binary64))
(*.f64 x x)
x
#s(literal 3 binary64)
#s(literal 6 binary64)

localize16.0ms (0.4%)

Memory
12.4MiB live, 12.4MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(-.f64 (*.f64 x x) #s(literal 3 binary64))
accuracy0
(*.f64 x x)
accuracy0.0703125
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
Samples
11.0ms256×0valid
Compiler

Compiled 20 to 8 computations (60% saved)

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

series3.0ms (0.1%)

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

3 calls:

TimeVariablePointExpression
1.0ms
x
@inf
((- (* x x) 3) (/ (- (* x x) 3) 6) (* x x))
1.0ms
x
@0
((- (* x x) 3) (/ (- (* x x) 3) 6) (* x x))
0.0ms
x
@-inf
((- (* x x) 3) (/ (- (* x x) 3) 6) (* x x))

simplify251.0ms (6.4%)

Memory
-13.1MiB live, 74.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019162
143162
298162
3236162
4759162
51590162
62334162
73514162
84236162
95345162
106402162
117126162
08039144
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
-3
(- (pow x 2) 3)
(- (pow x 2) 3)
(- (pow x 2) 3)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
Outputs
-3
#s(literal -3 binary64)
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* 1/6 (pow x 2))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* 1/6 (pow x 2))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)

rewrite234.0ms (6%)

Memory
19.1MiB live, 244.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
0915
14215
223015
3183115
0868513
Stop Event
iter limit
node limit
iter limit
Counts
3 → 516
Calls
Call 1
Inputs
(-.f64 (*.f64 x x) #s(literal 3 binary64))
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(*.f64 x 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>

eval83.0ms (2.1%)

Memory
-0.5MiB live, 152.5MiB allocated
Compiler

Compiled 14 583 to 1 649 computations (88.7% saved)

prune14.0ms (0.4%)

Memory
11.3MiB live, 49.8MiB allocated
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New5457552
Fresh000
Picked101
Done000
Total5467553
Accuracy
100.0%
Counts
553 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
99.9%
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
62.5%
(/.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 9 binary64)) (*.f64 (fma.f64 x x #s(literal 3 binary64)) #s(literal 6 binary64)))
53.3%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
47.0%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 88 to 76 computations (13.6% saved)

simplify4.0ms (0.1%)

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

Found 10 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01870
02768
14068
24468
34668
04668
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 x x #s(literal -3 binary64))
x
#s(literal -3 binary64)
#s(literal 6 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
#s(literal 1/6 binary64)
(*.f64 x x)
x
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(*.f64 x #s(literal 1/6 binary64))
x
#s(literal 1/6 binary64)
#s(literal -1/2 binary64)
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(*.f64 x x)
x
#s(literal 1/6 binary64)
#s(literal -1/2 binary64)
Outputs
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 x x #s(literal -3 binary64))
x
#s(literal -3 binary64)
#s(literal 6 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
#s(literal 1/6 binary64)
(*.f64 x x)
x
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64))
(*.f64 x #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) x)
x
#s(literal 1/6 binary64)
#s(literal -1/2 binary64)
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64))
(*.f64 x x)
x
#s(literal 1/6 binary64)
#s(literal -1/2 binary64)

localize46.0ms (1.2%)

Memory
-22.8MiB live, 104.6MiB allocated
Localize:

Found 10 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x x)
accuracy0.08203125
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
accuracy0.05859375
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
accuracy0.375
(*.f64 x #s(literal 1/6 binary64))
accuracy0
(*.f64 x x)
accuracy0.16796875
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
accuracy29.84544343330507
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
accuracy33.917704739966226
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
accuracy0
(fma.f64 x x #s(literal -3 binary64))
accuracy0.0703125
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
Samples
34.0ms256×0valid
Compiler

Compiled 68 to 19 computations (72.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 8.0ms (34.1% of total)
ival-div: 5.0ms (21.3% of total)
ival-add: 5.0ms (21.3% of total)
const: 4.0ms (17.1% of total)
ival-sub: 1.0ms (4.3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.2%)

Memory
14.9MiB live, 14.9MiB allocated
Counts
9 → 108
Calls
Call 1
Inputs
#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt -1/2 (taylor 0 x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt -3 (taylor 0 x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) (patch (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 x x #s(literal -3 binary64)) (patch (fma.f64 x x #s(literal -3 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) (patch #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) (patch (*.f64 #s(literal 1/6 binary64) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 1/6 binary64)) (patch (*.f64 x #s(literal 1/6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) (patch (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify145.0ms (3.7%)

Memory
-10.2MiB live, 122.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020554
145554
298554
3232554
4740554
51580554
62324554
73496554
84216554
95320554
106373554
117104554
08017500
Stop Event
iter limit
node limit
Counts
108 → 108
Calls
Call 1
Inputs
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
-3
(- (pow x 2) 3)
(- (pow x 2) 3)
(- (pow x 2) 3)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
Outputs
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
-3
#s(literal -3 binary64)
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))

rewrite182.0ms (4.7%)

Memory
-16.9MiB live, 334.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01855
02753
110753
249953
3407853
0995753
Stop Event
iter limit
node limit
iter limit
Counts
9 → 730
Calls
Call 1
Inputs
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 x x #s(literal -3 binary64))
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(*.f64 x x)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(*.f64 x #s(literal 1/6 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval90.0ms (2.3%)

Memory
22.3MiB live, 174.9MiB allocated
Compiler

Compiled 13 763 to 944 computations (93.1% saved)

prune20.0ms (0.5%)

Memory
18.7MiB live, 55.7MiB allocated
Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New8542856
Fresh112
Picked145
Done000
Total8567863
Accuracy
100.0%
Counts
863 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
53.3%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
53.2%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
47.0%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 38 to 33 computations (13.2% saved)

simplify4.0ms (0.1%)

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

Found 8 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01660
02360
13659
23959
03957
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(*.f64 #s(literal 1/6 binary64) x)
#s(literal 1/6 binary64)
x
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
#s(approx (- (* x x) 3) (*.f64 x x))
(*.f64 x x)
x
#s(literal 6 binary64)
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 x #s(literal 6 binary64))
x
#s(literal 6 binary64)
#s(literal -1/2 binary64)
Outputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(*.f64 #s(literal 1/6 binary64) x)
#s(literal 1/6 binary64)
x
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
#s(approx (- (* x x) 3) (*.f64 x x))
(*.f64 x x)
x
#s(literal 6 binary64)
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(/.f64 x #s(literal 6 binary64))
x
#s(literal 6 binary64)
#s(literal -1/2 binary64)

localize59.0ms (1.5%)

Memory
-46.6MiB live, 87.5MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 x #s(literal 6 binary64))
accuracy0.05859375
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
accuracy0
(*.f64 x x)
accuracy0.0703125
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
accuracy29.846897363632795
#s(approx (- (* x x) 3) (*.f64 x x))
accuracy0.12890625
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
accuracy0.375
(*.f64 #s(literal 1/6 binary64) x)
accuracy29.84544343330507
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
Samples
46.0ms256×0valid
Compiler

Compiled 49 to 15 computations (69.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 33.0ms
ival-mult: 23.0ms (70.4% of total)
const: 4.0ms (12.2% of total)
ival-div: 3.0ms (9.2% of total)
ival-sub: 1.0ms (3.1% of total)
ival-add: 1.0ms (3.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.1%)

Memory
11.8MiB live, 11.8MiB allocated
Counts
8 → 96
Calls
Call 1
Inputs
#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())
#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())
#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())
Outputs
#s(alt -1/2 (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt -3 (taylor 0 x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (- (pow x 2) 3) (taylor 0 x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt -1/2 (taylor 0 x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 1/6 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/6 binary64) x) (patch (*.f64 #s(literal 1/6 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) (patch (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (- (* x x) 3) (*.f64 x x)) (patch #s(approx (- (* x x) 3) (*.f64 x x)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) (patch (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify112.0ms (2.9%)

Memory
19.5MiB live, 100.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020442
145442
298442
3232442
4736442
51574442
62320442
73494442
84218442
95325442
106379442
117108442
08021406
Stop Event
iter limit
node limit
Counts
96 → 96
Calls
Call 1
Inputs
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
-3
(- (pow x 2) 3)
(- (pow x 2) 3)
(- (pow x 2) 3)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(pow x 2)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
Outputs
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
-3
#s(literal -3 binary64)
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(- (pow x 2) 3)
(fma.f64 x x #s(literal -3 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(pow x 2)
(*.f64 x x)
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))
(fma.f64 x x #s(literal -3 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))

rewrite150.0ms (3.8%)

Memory
-20.5MiB live, 209.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01653
02353
18552
244452
3417052
0895450
Stop Event
iter limit
node limit
iter limit
Counts
8 → 334
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(*.f64 #s(literal 1/6 binary64) x)
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
#s(approx (- (* x x) 3) (*.f64 x x))
(*.f64 x x)
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 x #s(literal 6 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval49.0ms (1.3%)

Memory
0.6MiB live, 82.5MiB allocated
Compiler

Compiled 6 175 to 878 computations (85.8% saved)

prune13.0ms (0.3%)

Memory
-8.5MiB live, 30.3MiB allocated
Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New4291430
Fresh000
Picked033
Done044
Total4298437
Accuracy
100.0%
Counts
437 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
53.3%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
53.2%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
47.0%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 44 to 38 computations (13.6% saved)

simplify3.0ms (0.1%)

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

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 x #s(literal 6 binary64))
cost-diff0
(*.f64 (/.f64 x #s(literal 6 binary64)) x)
cost-diff0
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
01123
12023
22423
32523
02522
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
(*.f64 (/.f64 x #s(literal 6 binary64)) x)
(/.f64 x #s(literal 6 binary64))
x
#s(literal 6 binary64)
Outputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
(*.f64 (/.f64 x #s(literal 6 binary64)) x)
(/.f64 x #s(literal 6 binary64))
x
#s(literal 6 binary64)

localize19.0ms (0.5%)

Memory
31.6MiB live, 31.6MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 x #s(literal 6 binary64))
accuracy0.12890625
(*.f64 (/.f64 x #s(literal 6 binary64)) x)
accuracy29.84544343330507
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
Samples
14.0ms256×0valid
Compiler

Compiled 19 to 10 computations (47.4% saved)

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

series5.0ms (0.1%)

Memory
-32.6MiB live, 6.2MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())
#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())
#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())
Outputs
#s(alt -1/2 (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (- (* 1/6 (pow x 2)) 1/2) (taylor 0 x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor 0 x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (patch #s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (/.f64 x #s(literal 6 binary64)) x) (patch (*.f64 (/.f64 x #s(literal 6 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (/.f64 x #s(literal 6 binary64)) (patch (/.f64 x #s(literal 6 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
((/ (- (* x x) 3) 6) (* (/ x 6) x) (/ x 6))
1.0ms
x
@inf
((/ (- (* x x) 3) 6) (* (/ x 6) x) (/ x 6))
1.0ms
x
@0
((/ (- (* x x) 3) 6) (* (/ x 6) x) (/ x 6))

simplify165.0ms (4.2%)

Memory
8.7MiB live, 91.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014170
129170
258170
3132170
4362170
5698170
61153170
72165170
83613170
94693170
105638170
116785170
127934170
08469161
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
-1/2
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(- (* 1/6 (pow x 2)) 1/2)
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 (pow x 2))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 (pow x 2))
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
(* 1/6 x)
Outputs
-1/2
#s(literal -1/2 binary64)
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(- (* 1/6 (pow x 2)) 1/2)
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))
(* 1/6 x)
(*.f64 x #s(literal 1/6 binary64))

rewrite171.0ms (4.4%)

Memory
7.9MiB live, 117.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
01121
15121
226521
3211121
0911720
Stop Event
iter limit
node limit
iter limit
Counts
3 → 98
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
(*.f64 (/.f64 x #s(literal 6 binary64)) x)
(/.f64 x #s(literal 6 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>

eval13.0ms (0.3%)

Memory
19.5MiB live, 19.5MiB allocated
Compiler

Compiled 1 137 to 313 computations (72.5% saved)

prune44.0ms (1.1%)

Memory
-18.0MiB live, 28.7MiB allocated
Pruning

8 alts after pruning (0 fresh and 8 done)

PrunedKeptTotal
New1340134
Fresh000
Picked011
Done077
Total1348142
Accuracy
100.0%
Counts
142 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
99.9%
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
53.3%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
53.2%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
53.3%
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
47.0%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 113 to 71 computations (37.2% saved)

regimes43.0ms (1.1%)

Memory
-16.6MiB live, 22.1MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(/.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 9 binary64)) (*.f64 (fma.f64 x x #s(literal 3 binary64)) #s(literal 6 binary64)))
Outputs
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
Calls

4 calls:

33.0ms
x
3.0ms
(*.f64 x x)
3.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
3.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.9%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.9%1(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes11.0ms (0.3%)

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

4 calls:

3.0ms
x
3.0ms
(*.f64 x x)
2.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
2.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.9%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.9%1(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes11.0ms (0.3%)

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

4 calls:

3.0ms
x
3.0ms
(*.f64 x x)
2.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
2.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.9%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.9%1(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes8.0ms (0.2%)

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

4 calls:

2.0ms
x
2.0ms
(*.f64 x x)
2.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
2.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.9%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.9%1(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes21.0ms (0.5%)

Memory
-29.2MiB live, 9.6MiB allocated
Counts
3 → 2
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
Outputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
Calls

4 calls:

16.0ms
(*.f64 x x)
2.0ms
x
2.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
2.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
98.5%2x
98.5%2(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
98.5%2(-.f64 (*.f64 x x) #s(literal 3 binary64))
98.5%2(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes5.0ms (0.1%)

Memory
7.7MiB live, 7.7MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Outputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Calls

4 calls:

1.0ms
x
1.0ms
(*.f64 x x)
1.0ms
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
1.0ms
(-.f64 (*.f64 x x) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
47.0%1x
47.0%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
47.0%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
47.0%1(*.f64 x x)
Compiler

Compiled 16 to 13 computations (18.8% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8818876715182359
576320411.2646981
Compiler

Compiled 10 to 10 computations (0% saved)

simplify31.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02361
12861
Stop Event
saturated
Calls
Call 1
Inputs
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(if (<=.f64 (*.f64 x x) #s(literal 1 binary64)) #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))))
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Outputs
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(fma.f64 (*.f64 x #s(literal 1/6 binary64)) x #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64))
(if (<=.f64 (*.f64 x x) #s(literal 1 binary64)) #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #s(approx (/ (- (* x x) 3) 6) (*.f64 #s(literal 1/6 binary64) (*.f64 x x))))
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))

soundness671.0ms (17.2%)

Memory
28.5MiB live, 294.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
0915
14215
223015
3183115
0868513
01855
02753
110753
249953
3407853
0995753
019162
143162
298162
3236162
4759162
51590162
62334162
73514162
84236162
95345162
106402162
117126162
08039144
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 111 to 73 computations (34.2% saved)

preprocess66.0ms (1.7%)

Memory
-14.3MiB live, 99.8MiB allocated
Remove

(abs x)

Compiler

Compiled 118 to 70 computations (40.7% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...