Quadratic roots, narrow range

Time bar (total: 1.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze232.0ms (13.7%)

Memory
0.8MiB live, 88.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
0%0%0%100%0%0%0%3
0%0%0%100%0%0%0%4
0%0%0%100%0%0%0%5
0%0%0%100%0%0%0%6
0%0%0%100%0%0%0%7
2.3%0%0%100%0%0%0%8
11.3%0%0%100%0%0%0%9
21.1%0%0%100%0%0%0%10
28%0%0%100%0%0%0%11
40.1%0%0%100%0%0%0%12
Compiler

Compiled 41 to 28 computations (31.7% saved)

sample59.0ms (3.5%)

Memory
7.1MiB live, 22.6MiB allocated
Samples
30.0ms170×1valid
10.0ms90×0valid
5.0ms47×0invalid
Precisions
Click to see histograms. Total time spent on operations: 36.0ms
const: 8.0ms (22% of total)
ival-mult: 8.0ms (22% of total)
adjust: 4.0ms (11% of total)
ival-<: 4.0ms (11% of total)
ival-div: 3.0ms (8.2% of total)
ival-sqrt: 3.0ms (8.2% of total)
ival-sub: 2.0ms (5.5% of total)
ival-add: 2.0ms (5.5% of total)
ival-and: 1.0ms (2.7% of total)
ival-neg: 1.0ms (2.7% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain1.3s (74.1%)

Memory
4.8MiB live, 958.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
2243(5.765997235674877e-8 7.141248141819642 2343959.542376912)0-(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))
00-0-a
00-0-#s(literal 4 binary64)
00-0-(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))
00-0-(*.f64 (*.f64 #s(literal 4 binary64) a) c)
00-0-(*.f64 b b)
00-0-(*.f64 #s(literal 2 binary64) a)
00-0-c
00-0-#s(literal 2 binary64)
00-0-(neg.f64 b)
00-0-(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))
00-0-(*.f64 #s(literal 4 binary64) a)
00-0-b
00-0-(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))cancellation2279
Confusion
Predicted +Predicted -
+2240
-329
Precision
0.986784140969163
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+22400
-3920
Precision?
0.9491525423728814
Recall?
1.0
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
029
1227
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
8.187255859375
Average Time
0.031981468200683594
Samples
312.0ms2 040×1valid
85.0ms1 032×0valid
Compiler

Compiled 2 748 to 696 computations (74.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 255.0ms
ival-mult: 85.0ms (33.3% of total)
adjust: 49.0ms (19.2% of total)
ival-sqrt: 32.0ms (12.5% of total)
ival-div: 30.0ms (11.8% of total)
ival-add: 20.0ms (7.8% of total)
ival-sub: 20.0ms (7.8% of total)
ival-neg: 14.0ms (5.5% of total)
exact: 3.0ms (1.2% of total)
ival-true: 2.0ms (0.8% of total)
ival-assert: 1.0ms (0.4% of total)

preprocess113.0ms (6.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
054158
1162144
2463144
31233144
43210144
56057144
01417
02317
14016
27716
316016
424016
538116
666216
7112916
8224316
9251916
10262916
11268416
12268516
13268516
14269116
0269115
Stop Event
iter limit
saturated
iter limit
node limit
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
(*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (fma.f64 (*.f64 #s(literal -4 binary64) c) a (*.f64 b b))) b))
Compiler

Compiled 17 to 14 computations (17.6% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.7%
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
Compiler

Compiled 34 to 28 computations (17.6% saved)

simplify30.0ms (1.8%)

Memory
-7.5MiB live, 18.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01417
12716
24616
35716
46516
56816
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 a #s(literal 4 binary64))))) b) (*.f64 #s(literal 2 binary64) a))

soundness0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Stop Event
fuel
Compiler

Compiled 16 to 13 computations (18.8% saved)

preprocess1.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 66 to 54 computations (18.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...