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

Time bar (total: 1.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
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)

sample622.0ms (52.1%)

Memory
25.9MiB live, 718.4MiB allocated; 190ms collecting garbage
Samples
381.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 210.0ms
ival-mult: 93.0ms (44.2% of total)
ival-div: 61.0ms (29% of total)
ival-sub: 42.0ms (20% of total)
exact: 9.0ms (4.3% of total)
ival-assert: 3.0ms (1.4% of total)
adjust: 2.0ms (1% of total)
Bogosity

explain70.0ms (5.9%)

Memory
6.5MiB live, 96.2MiB allocated; 11ms collecting garbage
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
30.0ms512×0valid
Compiler

Compiled 47 to 22 computations (53.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-mult: 8.0ms (43.3% of total)
ival-div: 7.0ms (37.8% of total)
ival-sub: 3.0ms (16.2% of total)
exact: 1.0ms (5.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess28.0ms (2.3%)

Memory
-26.3MiB live, 24.7MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01121
13021
25821
39021
413521
514521
614921
715221
067
097
1177
2367
3657
4947
51097
61177
71257
81317
91357
01357
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))
Symmetry

(abs x)

Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
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)

series3.0ms (0.2%)

Memory
4.0MiB live, 4.0MiB allocated; 0ms collecting garbage
Counts
6 → 10
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
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* x x) 3) #s(hole binary64 -3))
#s(approx (- (* x x) 3) #s(hole binary64 (- (pow x 2) 3)))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* x x) 3) #s(hole binary64 (pow x 2)))
#s(approx (- (* x x) 3) #s(hole binary64 (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))))
Calls

3 calls:

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

rewrite65.0ms (5.5%)

Memory
22.7MiB live, 67.2MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036132
040128
1142128
0975114
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
16 → 59
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)
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* x x) 3) #s(hole binary64 -3))
#s(approx (- (* x x) 3) #s(hole binary64 (- (pow x 2) 3)))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* x x) 3) #s(hole binary64 (pow x 2)))
#s(approx (- (* x x) 3) #s(hole binary64 (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))))
Outputs
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) (/.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 1/4 binary64)) (fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) (/.f64 (*.f64 x x) #s(literal 6 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64)))) #s(literal 6 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 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)))
(/.f64 (-.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 27 binary64)) (*.f64 (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64))) #s(literal 6 binary64)))
(/.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64))) #s(literal -6 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(neg.f64 (/.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64))) #s(literal 6 binary64)))
(neg.f64 (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal -6 binary64)))
(fma.f64 (neg.f64 x) (/.f64 (neg.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 x) (/.f64 (fabs.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
(-.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1/2 binary64))
(+.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 9 binary64))) (neg.f64 (fma.f64 x x #s(literal 3 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 27 binary64))) (neg.f64 (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 9 binary64)) (fma.f64 x x #s(literal 3 binary64)))
(/.f64 (-.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 27 binary64)) (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64))))
(fma.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)) #s(literal -3 binary64))
(fma.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)) #s(literal -3 binary64))
(fma.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)) #s(literal -3 binary64))
(fma.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)) #s(literal -3 binary64))
(fma.f64 (neg.f64 x) (neg.f64 x) #s(literal -3 binary64))
(fma.f64 (fabs.f64 x) (fabs.f64 x) #s(literal -3 binary64))
(fma.f64 x x #s(literal -3 binary64))
(-.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 x x #s(literal 3 binary64))) (/.f64 #s(literal 9 binary64) (fma.f64 x x #s(literal 3 binary64))))
(-.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64)))) (/.f64 #s(literal 27 binary64) (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64)))))
(-.f64 (*.f64 x x) #s(literal 3 binary64))
(+.f64 (*.f64 x x) #s(literal -3 binary64))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
x
#s(literal 3 binary64)
#s(literal 6 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
#s(approx (- (* x x) 3) #s(literal -3 binary64))
#s(approx (- (* x x) 3) (fma.f64 x x #s(literal -3 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx x x)
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (- (* x x) 3) (*.f64 x x))
#s(approx (- (* x x) 3) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -3 binary64) #s(literal 1 binary64)) x) x))

eval7.0ms (0.5%)

Memory
11.9MiB live, 11.9MiB allocated; 0ms collecting garbage
Compiler

Compiled 654 to 189 computations (71.1% saved)

prune4.0ms (0.3%)

Memory
8.3MiB live, 8.3MiB allocated; 0ms collecting garbage
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New55661
Fresh000
Picked101
Done000
Total56662
Accuracy
100.0%
Counts
62 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
99.9%
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 binary64))
50.8%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
99.9%
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
50.3%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 124 to 100 computations (19.4% saved)

series11.0ms (0.9%)

Memory
-37.3MiB live, 8.1MiB allocated; 7ms collecting garbage
Counts
14 → 20
Calls
Call 1
Inputs
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
x
(/.f64 x #s(literal 6 binary64))
#s(literal 6 binary64)
#s(literal -1/2 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(*.f64 x x)
#s(literal 1/6 binary64)
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 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))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
#s(approx (- (* x x) 3) (*.f64 x x))
Outputs
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ x 6) #s(hole binary64 (* 1/6 x)))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (* (* x x) 1/6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* x x) 3) #s(hole binary64 -3))
#s(approx (- (* x x) 3) #s(hole binary64 (- (pow x 2) 3)))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* x x) 3) #s(hole binary64 (pow x 2)))
#s(approx (- (* x x) 3) #s(hole binary64 (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))))
Calls

3 calls:

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

rewrite65.0ms (5.4%)

Memory
24.6MiB live, 69.1MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058323
066315
1210305
01265294
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
34 → 114
Calls
Call 1
Inputs
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
x
(/.f64 x #s(literal 6 binary64))
#s(literal 6 binary64)
#s(literal -1/2 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(*.f64 x x)
#s(literal 1/6 binary64)
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 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))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
#s(approx (- (* x x) 3) (*.f64 x x))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ x 6) #s(hole binary64 (* 1/6 x)))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (* (* x x) 1/6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* x x) 3) #s(hole binary64 -3))
#s(approx (- (* x x) 3) #s(hole binary64 (- (pow x 2) 3)))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (+ (* x (/ x 6)) -1/2) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* x x) 3) #s(hole binary64 (pow x 2)))
#s(approx (- (* x x) 3) #s(hole binary64 (* (pow x 2) (- 1 (* 3 (/ 1 (pow x 2)))))))
Outputs
(/.f64 (-.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64))) (-.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x)))
(/.f64 (-.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) #s(literal 1/8 binary64)) (+.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64)))) #s(literal 6 binary64))
(/.f64 (neg.f64 (-.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) (-.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 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)))
(/.f64 (-.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) #s(literal 1/4 binary64)) (fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal 1/2 binary64)))
(/.f64 (-.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64)))
(/.f64 (-.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 27 binary64)) (*.f64 (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64))) #s(literal 6 binary64)))
(/.f64 (+.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) (*.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64)))))
(/.f64 (+.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64))) (fma.f64 #s(literal -1/2 binary64) (-.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64))))
(/.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64))) #s(literal -6 binary64))
(/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal 6 binary64))
(neg.f64 (/.f64 (neg.f64 (fma.f64 x x #s(literal -3 binary64))) #s(literal 6 binary64)))
(neg.f64 (/.f64 (fma.f64 x x #s(literal -3 binary64)) #s(literal -6 binary64)))
(fma.f64 (neg.f64 x) (/.f64 (neg.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 x) (/.f64 (fabs.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (/.f64 x #s(literal 6 binary64)) x #s(literal -1/2 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
(-.f64 (/.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) (-.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64))))
(-.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal 1/2 binary64))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 (/.f64 x #s(literal 6 binary64))) x))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 x) (/.f64 x #s(literal 6 binary64))))
(+.f64 (/.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) (fma.f64 #s(literal -1/2 binary64) (-.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)))) (/.f64 #s(literal -1/8 binary64) (fma.f64 #s(literal -1/2 binary64) (-.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x)) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)))))
(+.f64 (*.f64 (/.f64 x #s(literal 6 binary64)) x) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 x #s(literal 6 binary64)) x))
x
(/.f64 (neg.f64 (neg.f64 x)) #s(literal 6 binary64))
(/.f64 (neg.f64 x) #s(literal -6 binary64))
(/.f64 x #s(literal 6 binary64))
(neg.f64 (/.f64 (neg.f64 x) #s(literal 6 binary64)))
(neg.f64 (/.f64 x #s(literal -6 binary64)))
#s(literal 6 binary64)
#s(literal -1/2 binary64)
#s(approx (+ (* x (/ x 6)) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* x (/ x 6)) -1/2) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
(*.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1/6 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1/6 binary64)))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1/6 binary64)))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(*.f64 x (*.f64 #s(literal 1/6 binary64) x))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
#s(literal 1/6 binary64)
#s(approx (+ (* x (/ x 6)) -1/2) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)))) (-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 x x) #s(literal 1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal -1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/12 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) #s(literal -1/4 binary64)) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal -1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (*.f64 x x) #s(literal -1/12 binary64)))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal -1/8 binary64)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/12 binary64)))))
(fma.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 x)) (neg.f64 x) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) (fabs.f64 x)) (fabs.f64 x) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1/6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 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))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(fma.f64 x (*.f64 #s(literal 1/6 binary64) x) #s(literal -1/2 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(-.f64 (*.f64 (*.f64 x x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64))
(-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (neg.f64 x) x) #s(literal 1/6 binary64)))
(-.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 x x)))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 x) (*.f64 #s(literal 1/6 binary64) x)))
(+.f64 (/.f64 (*.f64 #s(literal 1/216 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/12 binary64))))) (/.f64 #s(literal -1/8 binary64) (fma.f64 #s(literal 1/36 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/12 binary64))))))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/6 binary64)) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (* x x) 3) (*.f64 x x)))) #s(literal 6 binary64))
(/.f64 (neg.f64 #s(approx (- (* x x) 3) (*.f64 x x))) #s(literal -6 binary64))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
(neg.f64 (/.f64 (neg.f64 #s(approx (- (* x x) 3) (*.f64 x x))) #s(literal 6 binary64)))
(neg.f64 (/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal -6 binary64)))
#s(approx (- (* x x) 3) (*.f64 x x))
#s(approx (+ (* x (/ x 6)) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* x (/ x 6)) -1/2) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
#s(approx x x)
#s(approx (/ x 6) (*.f64 #s(literal 1/6 binary64) x))
#s(approx (+ (* x (/ x 6)) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* x (/ x 6)) -1/2) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
#s(approx (* (* x x) 1/6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx (+ (* (* x x) 1/6) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* (* x x) 1/6) -1/2) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
#s(approx (- (* x x) 3) #s(literal -3 binary64))
#s(approx (- (* x x) 3) (fma.f64 x x #s(literal -3 binary64)))
#s(approx (+ (* x (/ x 6)) -1/2) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (+ (* x (/ x 6)) -1/2) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (+ (* x (/ x 6)) -1/2) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (+ (* x (/ x 6)) -1/2) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (+ (* (* x x) 1/6) -1/2) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (+ (* (* x x) 1/6) -1/2) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (- (* x x) 3) (*.f64 x x))
#s(approx (- (* x x) 3) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -3 binary64) #s(literal 1 binary64)) x) x))

eval23.0ms (1.9%)

Memory
-21.9MiB live, 33.1MiB allocated; 8ms collecting garbage
Compiler

Compiled 2 348 to 403 computations (82.8% saved)

prune6.0ms (0.5%)

Memory
14.4MiB live, 14.4MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New1571158
Fresh011
Picked055
Done000
Total1577164
Accuracy
100.0%
Counts
164 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
99.9%
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 binary64))
50.8%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
99.9%
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
50.3%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 75 to 60 computations (20% saved)

series5.0ms (0.4%)

Memory
8.2MiB live, 8.2MiB allocated; 0ms collecting garbage
Counts
12 → 17
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 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 binary64))
(-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 x x)
#s(literal 6 binary64)
#s(literal 18 binary64)
#s(literal 36 binary64)
Outputs
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (* (* 1/6 x) x) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (* 1/6 x) #s(hole binary64 (* 1/6 x)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 -1/2))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 -18))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (- (* 6 (pow x 2)) 18)))
#s(approx (* (* x x) 6) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* (pow x 2) (- 6 (* 18 (/ 1 (pow x 2)))))))
Calls

3 calls:

TimeVariablePointExpression
2.0ms
x
@inf
((/ (- (* x x) 3) 6) (* (* 1/6 x) x) (* 1/6 x) 1/6 x (/ (- (* (* x x) 6) 18) 36) (- (* (* x x) 6) 18) (* (* x x) 6) (* x x) 6 18 36)
1.0ms
x
@-inf
((/ (- (* x x) 3) 6) (* (* 1/6 x) x) (* 1/6 x) 1/6 x (/ (- (* (* x x) 6) 18) 36) (- (* (* x x) 6) 18) (* (* x x) 6) (* x x) 6 18 36)
1.0ms
x
@0
((/ (- (* x x) 3) 6) (* (* 1/6 x) x) (* 1/6 x) 1/6 x (/ (- (* (* x x) 6) 18) 36) (- (* (* x x) 6) 18) (* (* x x) 6) (* x x) 6 18 36)

rewrite62.0ms (5.2%)

Memory
0.9MiB live, 47.7MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055271
064257
1210255
01255234
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
29 → 127
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 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 binary64))
(-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 x x)
#s(literal 6 binary64)
#s(literal 18 binary64)
#s(literal 36 binary64)
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 -1/2))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (* (* 1/6 x) x) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (* 1/6 x) #s(hole binary64 (* 1/6 x)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 -1/2))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 -18))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (- (* 6 (pow x 2)) 18)))
#s(approx (* (* x x) 6) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* x x) 3) 6) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* (pow x 2) (- 6 (* 18 (/ 1 (pow x 2)))))))
Outputs
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
(*.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1/6 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (/.f64 x #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal 6 binary64) x) #s(literal 6 binary64)))
(*.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1 binary64))
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1/6 binary64)))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1/6 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 x x) #s(literal 6 binary64)))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(*.f64 (*.f64 x x) #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 x x))
(*.f64 #s(literal 6 binary64) (/.f64 (*.f64 x x) #s(literal 36 binary64)))
(*.f64 x (/.f64 (*.f64 #s(literal 6 binary64) x) #s(literal 36 binary64)))
(*.f64 x (*.f64 #s(literal 1/6 binary64) x))
(/.f64 (/.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 6 binary64)) #s(literal 6 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal -36 binary64))
(/.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 36 binary64))
(*.f64 #s(literal 1/6 binary64) x)
(*.f64 x #s(literal 1/6 binary64))
#s(literal 1/6 binary64)
x
(/.f64 (/.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64)) #s(literal 6 binary64)) #s(literal 6 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) (/.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 1/4 binary64)) (fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) (/.f64 (*.f64 x x) #s(literal 6 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) #s(literal -1/4 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/216 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)))) #s(literal 6 binary64))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64)))) #s(literal 36 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 36 binary64)) #s(literal 648 binary64)) #s(literal 1296 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 6 binary64)) #s(literal 108 binary64)) #s(literal 216 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 36 binary64)) #s(literal 108 binary64)) #s(literal 216 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)))
(/.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) #s(literal -1/4 binary64)) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) #s(literal -324 binary64)) (*.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal 18 binary64)) #s(literal 36 binary64)))
(/.f64 (-.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 27 binary64)) (*.f64 (fma.f64 #s(literal 3 binary64) (fma.f64 x x #s(literal 3 binary64)) (pow.f64 x #s(literal 4 binary64))) #s(literal 6 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/216 binary64)) #s(literal 1/8 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) #s(literal 5832 binary64)) (*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) (fma.f64 (*.f64 x x) #s(literal 108 binary64) #s(literal 324 binary64))) #s(literal 36 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64))) #s(literal -6 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64))) #s(literal -36 binary64))
(/.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64)) #s(literal 36 binary64))
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(neg.f64 (/.f64 (neg.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64))) #s(literal 6 binary64)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64))) #s(literal 36 binary64)))
(neg.f64 (/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal -6 binary64)))
(neg.f64 (/.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64)) #s(literal -36 binary64)))
(fma.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 x)) (neg.f64 x) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) (fabs.f64 x)) (fabs.f64 x) #s(literal -1/2 binary64))
(fma.f64 (/.f64 x #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal 6 binary64) x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1 binary64) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 x) (/.f64 (neg.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1/6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 x) (/.f64 (fabs.f64 x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1/6 binary64)) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal -1/2 binary64))
(fma.f64 #s(literal 6 binary64) (/.f64 (*.f64 x x) #s(literal 36 binary64)) #s(literal -1/2 binary64))
(fma.f64 x (/.f64 (*.f64 #s(literal 6 binary64) x) #s(literal 36 binary64)) #s(literal -1/2 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
(fma.f64 x (*.f64 #s(literal 1/6 binary64) x) #s(literal -1/2 binary64))
(-.f64 (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64)) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/216 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/36 binary64) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal 1/4 binary64)))))
(-.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 x x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64))
(+.f64 (/.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal -1/2 binary64))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/6 binary64)) #s(literal -1/2 binary64))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) #s(literal -324 binary64))) (neg.f64 (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal 18 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) #s(literal 5832 binary64))) (neg.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) (fma.f64 (*.f64 x x) #s(literal 108 binary64) #s(literal 324 binary64)))))
(/.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) #s(literal -324 binary64)) (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal 18 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) #s(literal 5832 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) (fma.f64 (*.f64 x x) #s(literal 108 binary64) #s(literal 324 binary64))))
(fma.f64 (*.f64 #s(literal 6 binary64) (neg.f64 x)) (neg.f64 x) #s(literal -18 binary64))
(fma.f64 (*.f64 #s(literal 6 binary64) (fabs.f64 x)) (fabs.f64 x) #s(literal -18 binary64))
(fma.f64 (*.f64 #s(literal 6 binary64) x) x #s(literal -18 binary64))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 6 binary64)) #s(literal -18 binary64))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 6 binary64)) #s(literal -18 binary64))
(fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64))
(fma.f64 #s(literal 6 binary64) (*.f64 x x) #s(literal -18 binary64))
(fma.f64 x (*.f64 #s(literal 6 binary64) x) #s(literal -18 binary64))
(-.f64 (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64)) (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal 18 binary64))) (/.f64 #s(literal 324 binary64) (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal 18 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 216 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) (fma.f64 (*.f64 x x) #s(literal 108 binary64) #s(literal 324 binary64)))) (/.f64 #s(literal 5832 binary64) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 36 binary64) (fma.f64 (*.f64 x x) #s(literal 108 binary64) #s(literal 324 binary64)))))
(-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64))
(+.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal -18 binary64))
(*.f64 (*.f64 #s(literal 6 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 6 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (*.f64 #s(literal 6 binary64) x) x)
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 6 binary64)))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 6 binary64)))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 #s(literal 6 binary64) (*.f64 x x))
(*.f64 x (*.f64 #s(literal 6 binary64) x))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
#s(literal 6 binary64)
#s(literal 18 binary64)
#s(literal 36 binary64)
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(literal -1/2 binary64))
#s(approx (/ (- (* (* x x) 6) 18) 36) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
#s(approx (* (* 1/6 x) x) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (* 1/6 x) (*.f64 #s(literal 1/6 binary64) x))
#s(approx x x)
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(literal -1/2 binary64))
#s(approx (/ (- (* (* x x) 6) 18) 36) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1/2 binary64)))
#s(approx (- (* (* x x) 6) 18) #s(literal -18 binary64))
#s(approx (- (* (* x x) 6) 18) (fma.f64 (*.f64 x x) #s(literal 6 binary64) #s(literal -18 binary64)))
#s(approx (* (* x x) 6) (*.f64 (*.f64 x x) #s(literal 6 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64)))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -18 binary64) #s(literal 6 binary64)) x) x))

eval16.0ms (1.3%)

Memory
-20.7MiB live, 25.6MiB allocated; 3ms collecting garbage
Compiler

Compiled 1 583 to 377 computations (76.2% saved)

prune5.0ms (0.5%)

Memory
12.5MiB live, 12.5MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New1271128
Fresh000
Picked112
Done055
Total1287135
Accuracy
100.0%
Counts
135 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
50.8%
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 36 binary64))
50.8%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
99.9%
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
50.3%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 81 to 64 computations (21% saved)

series2.0ms (0.2%)

Memory
4.4MiB live, 4.4MiB allocated; 0ms collecting garbage
Counts
7 → 11
Calls
Call 1
Inputs
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 36 binary64))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64)))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 x x)
x
#s(literal 6 binary64)
#s(literal 36 binary64)
Outputs
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 -1/2))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 -18))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (- (* 6 (pow x 2)) 18)))
#s(approx (* (* x x) 6) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* (pow x 2) (- 6 (* 18 (/ 1 (pow x 2)))))))
Calls

3 calls:

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

rewrite49.0ms (4.1%)

Memory
-2.9MiB live, 44.0MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041184
045180
1167172
01005158
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
18 → 45
Calls
Call 1
Inputs
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 36 binary64))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64)))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 x x)
x
#s(literal 6 binary64)
#s(literal 36 binary64)
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 -1/2))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (- (* 1/6 (pow x 2)) 1/2)))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 -18))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (- (* 6 (pow x 2)) 18)))
#s(approx (* (* x x) 6) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* 1/6 (pow x 2))))
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(hole binary64 (* (pow x 2) (- 1/6 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* 6 (pow x 2))))
#s(approx (- (* (* x x) 6) 18) #s(hole binary64 (* (pow x 2) (- 6 (* 18 (/ 1 (pow x 2)))))))
Outputs
(/.f64 (/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x)) #s(literal 6 binary64)) #s(literal 6 binary64))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x)))) #s(literal 36 binary64))
(/.f64 (neg.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x))) #s(literal -36 binary64))
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x)) #s(literal 36 binary64))
(neg.f64 (/.f64 (neg.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x))) #s(literal 36 binary64)))
(neg.f64 (/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x)) #s(literal -36 binary64)))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x))
(*.f64 (*.f64 #s(literal 6 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 6 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (*.f64 #s(literal 6 binary64) x) x)
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 6 binary64)))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 6 binary64)))
(*.f64 (*.f64 x x) #s(literal 6 binary64))
(*.f64 #s(literal 6 binary64) (*.f64 x x))
(*.f64 x (*.f64 #s(literal 6 binary64) x))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
x
#s(literal 6 binary64)
#s(literal 36 binary64)
#s(approx (/ (- (* (* x x) 6) 18) 36) #s(literal -1/2 binary64))
#s(approx (/ (- (* (* x x) 6) 18) 36) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
#s(approx (- (* (* x x) 6) 18) #s(literal -18 binary64))
#s(approx (- (* (* x x) 6) 18) (fma.f64 (*.f64 #s(literal 6 binary64) x) x #s(literal -18 binary64)))
#s(approx (* (* x x) 6) (*.f64 (*.f64 #s(literal 6 binary64) x) x))
#s(approx (* x x) (*.f64 x x))
#s(approx x x)
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* (* x x) 6) 18) 36) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 1/6 binary64)) x) x))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 #s(literal 6 binary64) x) x))
#s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal -18 binary64) #s(literal 6 binary64)) x) x))

eval5.0ms (0.4%)

Memory
9.4MiB live, 9.4MiB allocated; 0ms collecting garbage
Compiler

Compiled 763 to 164 computations (78.5% saved)

prune4.0ms (0.4%)

Memory
8.6MiB live, 8.6MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New46046
Fresh000
Picked011
Done066
Total46753
Accuracy
100.0%
Counts
53 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
50.8%
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 36 binary64))
50.8%
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
99.9%
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
50.8%
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
50.3%
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Compiler

Compiled 178 to 99 computations (44.4% saved)

regimes19.0ms (1.6%)

Memory
-23.2MiB live, 25.3MiB allocated; 5ms collecting garbage
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(/.f64 #s(approx (- (* (* x x) 6) 18) (*.f64 (*.f64 x x) #s(literal 6 binary64))) #s(literal 36 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 6 binary64)) #s(literal 18 binary64)) #s(literal 36 binary64))
Outputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
Calls

4 calls:

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

Compiled 16 to 13 computations (18.8% saved)

regimes8.0ms (0.7%)

Memory
15.2MiB live, 15.2MiB allocated; 0ms collecting garbage
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
Outputs
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #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%1(*.f64 x x)
99.9%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.9%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.9%1x
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes9.0ms (0.7%)

Memory
-32.6MiB live, 14.2MiB allocated; 2ms collecting garbage
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
(/.f64 #s(approx (- (* x x) 3) (*.f64 x x)) #s(literal 6 binary64))
Outputs
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
Calls

4 calls:

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

Compiled 16 to 13 computations (18.8% saved)

regimes6.0ms (0.5%)

Memory
10.3MiB live, 10.3MiB allocated; 0ms collecting garbage
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 (*.f64 #s(literal 1/6 binary64) x) x))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 x x) #s(literal 1/6 binary64)))
Outputs
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x))
Calls

4 calls:

2.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
99.3%2(*.f64 x x)
99.3%2(-.f64 (*.f64 x x) #s(literal 3 binary64))
99.3%2(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
99.3%2x
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes4.0ms (0.3%)

Memory
8.1MiB live, 8.1MiB allocated; 0ms collecting garbage
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
50.3%1(*.f64 x x)
50.3%1(-.f64 (*.f64 x x) #s(literal 3 binary64))
50.3%1(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
50.3%1x
Compiler

Compiled 16 to 13 computations (18.8% saved)

bsearch13.0ms (1.1%)

Memory
14.4MiB live, 14.4MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
11.0ms
0.00018304646780511715
3616.8788720455555
Samples
6.0ms144×0valid
Compiler

Compiled 208 to 190 computations (8.7% saved)

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

simplify16.0ms (1.3%)

Memory
-31.2MiB live, 14.8MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02262
13162
25562
38562
411362
513062
614162
714562
815162
915962
1016762
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
(if (<=.f64 x #s(literal 7/4 binary64)) #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)))
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))
Outputs
(/.f64 (-.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 6 binary64))
(fma.f64 x (/.f64 x #s(literal 6 binary64)) #s(literal -1/2 binary64))
#s(approx (/ (- (* x x) 3) 6) (fma.f64 (*.f64 x x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)))
(if (<=.f64 x #s(literal 7/4 binary64)) #s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64)) #s(approx (/ (- (* x x) 3) 6) (*.f64 (*.f64 #s(literal 1/6 binary64) x) x)))
#s(approx (/ (- (* x x) 3) 6) #s(literal -1/2 binary64))

derivations17.0ms (1.4%)

Memory
16.4MiB live, 16.4MiB allocated; 0ms collecting garbage
Stop Event
done
Compiler

Compiled 62 to 24 computations (61.3% saved)

preprocess49.0ms (4.1%)

Memory
-5.7MiB live, 39.6MiB allocated; 6ms collecting garbage
Remove

(abs x)

Compiler

Compiled 166 to 84 computations (49.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...