Data.Number.Erf:$dmerfcx from erf-2.0.0.0

Time bar (total: 737.0ms)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze2.0ms (0.3%)

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

Compiled 8 to 7 computations (12.5% saved)

sample567.0ms (76.9%)

Memory
-5.8MiB live, 820.0MiB allocated
Samples
363.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 194.0ms
ival-mult: 116.0ms (59.8% of total)
ival-exp: 68.0ms (35% of total)
ival-true: 6.0ms (3.1% of total)
ival-assert: 4.0ms (2.1% of total)
Bogosity

explain57.0ms (7.8%)

Memory
10.5MiB live, 87.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
10-0-(exp.f64 (*.f64 y y))
00-0-y
00-0-(*.f64 y y)
00-0-(*.f64 x (exp.f64 (*.f64 y y)))
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
exp.f64(exp.f64 (*.f64 y y))sensitivity10
Confusion
Predicted +Predicted -
+00
-1255
Precision
0.0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-10255
Precision?
0.0
Recall?
0/0
Freqs
test
numberfreq
0255
11
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-100
Precision?
0.0
Recall?
0/0
Samples
23.0ms512×0valid
Compiler

Compiled 55 to 24 computations (56.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 7.0ms (59.9% of total)
ival-exp: 4.0ms (34.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess3.0ms (0.4%)

Memory
5.6MiB live, 5.6MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 x (exp.f64 (*.f64 y y)))
Outputs
(*.f64 x (exp.f64 (*.f64 y y)))
Compiler

Compiled 6 to 5 computations (16.7% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0.1%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 x (exp.f64 (*.f64 y y)))
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify0.0ms (0%)

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

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 y y)
cost-diff0
(exp.f64 (*.f64 y y))
cost-diff0
(*.f64 x (exp.f64 (*.f64 y y)))
Calls
Call 1
Inputs
(*.f64 x (exp.f64 (*.f64 y y)))
x
(exp.f64 (*.f64 y y))
(*.f64 y y)
y
Outputs
(*.f64 x (exp.f64 (*.f64 y y)))
x
(exp.f64 (*.f64 y y))
(*.f64 y y)
y

localize19.0ms (2.6%)

Memory
-16.8MiB live, 26.2MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 y y)
accuracy0.0078125
(*.f64 x (exp.f64 (*.f64 y y)))
accuracy0.02664132407193433
(exp.f64 (*.f64 y y))
Samples
14.0ms256×0valid
Compiler

Compiled 32 to 12 computations (62.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-exp: 5.0ms (60% of total)
ival-mult: 3.0ms (36% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.5%)

Memory
6.2MiB live, 6.2MiB allocated
Counts
3 → 11
Calls
Call 1
Inputs
(*.f64 x (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
Outputs
(* x (exp (pow y 2)))
x
(+ x (* x (pow y 2)))
(+ x (* (pow y 2) (+ x (* 1/2 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* x (pow y 2))) (* 1/2 x))))))
1
(+ 1 (pow y 2))
(+ 1 (* (pow y 2) (+ 1 (* 1/2 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1 (* (pow y 2) (+ 1/2 (* 1/6 (pow y 2)))))))
(pow y 2)
(exp (pow y 2))
Calls

6 calls:

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

simplify0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
egg-herbie
Counts
11 → 3
Calls
Call 1
Inputs
(* x (exp (pow y 2)))
x
(+ x (* x (pow y 2)))
(+ x (* (pow y 2) (+ x (* 1/2 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* x (pow y 2))) (* 1/2 x))))))
1
(+ 1 (pow y 2))
(+ 1 (* (pow y 2) (+ 1 (* 1/2 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1 (* (pow y 2) (+ 1/2 (* 1/6 (pow y 2)))))))
(pow y 2)
(exp (pow y 2))
Outputs
(* x (exp (pow y 2)))
(*.f64 x (exp.f64 (*.f64 y y)))
x
(exp.f64 (*.f64 y y))
(+ x (* x (pow y 2)))
(*.f64 y y)

rewrite0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Counts
3 → 3
Calls
Call 1
Inputs
(*.f64 x (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
Outputs
(*.f64 x (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)

eval1.0ms (0.1%)

Memory
1.2MiB live, 1.2MiB allocated
Compiler

Compiled 52 to 11 computations (78.8% saved)

prune1.0ms (0.2%)

Memory
2.2MiB live, 2.2MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New426
Fresh000
Picked011
Done000
Total437
Accuracy
100.0%
Counts
7 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 x (exp.f64 (*.f64 y y)))
14.6%
#s(approx (* x (exp (* y y))) (*.f64 y y))
26.9%
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Compiler

Compiled 27 to 20 computations (25.9% saved)

simplify0.0ms (0%)

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

Found 5 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 y y)
cost-diff0
#s(approx (* x (exp (* y y))) (*.f64 y y))
cost-diff0
(*.f64 y y)
cost-diff0
(exp.f64 (*.f64 y y))
cost-diff0
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Calls
Call 1
Inputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
y
#s(approx (* x (exp (* y y))) (*.f64 y y))
(*.f64 y y)
y
Outputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
y
#s(approx (* x (exp (* y y))) (*.f64 y y))
(*.f64 y y)
y

localize19.0ms (2.5%)

Memory
-8.2MiB live, 30.0MiB allocated
Localize:

Found 5 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 y y)
accuracy54.635697854483844
#s(approx (* x (exp (* y y))) (*.f64 y y))
accuracy0.0
(*.f64 y y)
accuracy0.02664132407193433
(exp.f64 (*.f64 y y))
accuracy46.800327527091376
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Samples
14.0ms256×0valid
Compiler

Compiled 59 to 16 computations (72.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-mult: 5.0ms (70.7% of total)
ival-exp: 2.0ms (28.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series2.0ms (0.3%)

Memory
5.1MiB live, 5.1MiB allocated
Counts
4 → 11
Calls
Call 1
Inputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
#s(approx (* x (exp (* y y))) (*.f64 y y))
Outputs
(* x (exp (pow y 2)))
x
(+ x (* x (pow y 2)))
(+ x (* (pow y 2) (+ x (* 1/2 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* x (pow y 2))) (* 1/2 x))))))
1
(+ 1 (pow y 2))
(+ 1 (* (pow y 2) (+ 1 (* 1/2 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1 (* (pow y 2) (+ 1/2 (* 1/6 (pow y 2)))))))
(pow y 2)
(exp (pow y 2))
Calls

6 calls:

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

simplify0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
egg-herbie
Counts
11 → 4
Calls
Call 1
Inputs
(* x (exp (pow y 2)))
x
(+ x (* x (pow y 2)))
(+ x (* (pow y 2) (+ x (* 1/2 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* x (pow y 2))) (* 1/2 x))))))
1
(+ 1 (pow y 2))
(+ 1 (* (pow y 2) (+ 1 (* 1/2 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1 (* (pow y 2) (+ 1/2 (* 1/6 (pow y 2)))))))
(pow y 2)
(exp (pow y 2))
Outputs
(* x (exp (pow y 2)))
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
x
(exp.f64 (*.f64 y y))
(+ x (* x (pow y 2)))
(*.f64 y y)
(+ x (* (pow y 2) (+ x (* 1/2 (* x (pow y 2))))))
#s(approx (* x (exp (* y y))) (*.f64 y y))

rewrite0.0ms (0.1%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
#s(approx (* x (exp (* y y))) (*.f64 y y))
Outputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(exp.f64 (*.f64 y y))
(*.f64 y y)
#s(approx (* x (exp (* y y))) (*.f64 y y))

eval1.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated
Compiler

Compiled 88 to 11 computations (87.5% saved)

prune2.0ms (0.3%)

Memory
4.4MiB live, 4.4MiB allocated
Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New707
Fresh000
Picked022
Done011
Total7310
Accuracy
100.0%
Counts
10 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 x (exp.f64 (*.f64 y y)))
14.6%
#s(approx (* x (exp (* y y))) (*.f64 y y))
26.9%
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Compiler

Compiled 54 to 30 computations (44.4% saved)

regimes9.0ms (1.3%)

Memory
-19.9MiB live, 18.7MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (* x (exp (* y y))) (*.f64 y y))
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
(*.f64 x (exp.f64 (*.f64 y y)))
Outputs
(*.f64 x (exp.f64 (*.f64 y y)))
Calls

5 calls:

3.0ms
(exp.f64 (*.f64 y y))
2.0ms
y
2.0ms
x
1.0ms
(*.f64 y y)
1.0ms
(*.f64 x (exp.f64 (*.f64 y y)))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(*.f64 x (exp.f64 (*.f64 y y)))
100.0%1(exp.f64 (*.f64 y y))
100.0%1(*.f64 y y)
Compiler

Compiled 15 to 16 computations (-6.7% saved)

regimes7.0ms (0.9%)

Memory
17.4MiB live, 17.4MiB allocated
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (* x (exp (* y y))) (*.f64 y y))
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Outputs
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
Calls

5 calls:

1.0ms
x
1.0ms
y
1.0ms
(*.f64 x (exp.f64 (*.f64 y y)))
1.0ms
(*.f64 y y)
1.0ms
(exp.f64 (*.f64 y y))
Results
AccuracySegmentsBranch
26.9%1x
26.9%1y
26.9%1(*.f64 x (exp.f64 (*.f64 y y)))
26.9%1(exp.f64 (*.f64 y y))
26.9%1(*.f64 y y)
Compiler

Compiled 15 to 16 computations (-6.7% saved)

regimes6.0ms (0.8%)

Memory
-24.0MiB live, 15.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

5 calls:

1.0ms
(*.f64 y y)
1.0ms
x
1.0ms
y
1.0ms
(*.f64 x (exp.f64 (*.f64 y y)))
1.0ms
(exp.f64 (*.f64 y y))
Results
AccuracySegmentsBranch
14.6%1(exp.f64 (*.f64 y y))
14.6%1(*.f64 y y)
14.6%1y
14.6%1x
14.6%1(*.f64 x (exp.f64 (*.f64 y y)))
Compiler

Compiled 15 to 16 computations (-6.7% saved)

simplify4.0ms (0.6%)

Memory
11.5MiB live, 11.5MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 x (exp.f64 (*.f64 y y)))
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
#s(approx (* x (exp (* y y))) (*.f64 y y))
Outputs
(*.f64 x (exp.f64 (*.f64 y y)))
#s(approx (* x (exp (* y y))) (exp.f64 (*.f64 y y)))
#s(approx (* x (exp (* y y))) (*.f64 y y))

soundness1.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated
Stop Event
done
Compiler

Compiled 27 to 10 computations (63% saved)

preprocess30.0ms (4.1%)

Memory
-14.8MiB live, 62.6MiB allocated
Compiler

Compiled 78 to 40 computations (48.7% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...