Quadratic roots, full range

Time bar (total: 1.6s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze112.0ms (6.8%)

Memory
2.5MiB live, 43.0MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
25%25%74.9%0.1%0%0%0%4
37.5%37.4%62.4%0.1%0%0%0%5
37.5%37.4%62.4%0.1%0%0%0%6
40%37.4%56.2%0.1%0%6.2%0%7
48.3%45.2%48.4%0.1%0%6.2%0%8
53%48.4%42.9%0.1%0%8.6%0%9
58.1%50.3%36.3%0.1%0%13.3%0%10
66.1%56.8%29.1%0.1%0%14%0%11
70.4%58.8%24.7%0.1%0%16.4%0%12
Compiler

Compiled 19 to 16 computations (15.8% saved)

sample41.0ms (2.5%)

Memory
-1.0MiB live, 13.9MiB allocated
Samples
11.0ms160×0valid
9.0ms46×2valid
7.0ms49×1valid
1.0ms19×0invalid
1.0ms3valid
Precisions
Click to see histograms. Total time spent on operations: 22.0ms
ival-mult: 7.0ms (31.9% of total)
adjust: 4.0ms (18.2% of total)
ival-div: 3.0ms (13.7% of total)
ival-sqrt: 3.0ms (13.7% of total)
ival-sub: 2.0ms (9.1% of total)
ival-add: 2.0ms (9.1% of total)
ival-neg: 1.0ms (4.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain1.3s (81.6%)

Memory
13.8MiB live, 983.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1180-1(-8.530740730885256e-223 -4.641746703114738e-161 1.287289507032652e-292)(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))
6635(-1.5427223488698555e-21 7.66383839369033e+59 -2.8176905244986585e-251)0-(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))
180-17(-1.3103921119827446e-220 1.2866273908983991e+164 1.663948383339389e+73)(/.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))
44(7.436734141244506e-64 3.621326995399119e+85 7.300379718616756e+202)0-(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))
00-0-a
00-0-#s(literal 4 binary64)
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 #s(literal 4 binary64) a)
00-0-b
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))oflow-rescue1110
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))overflow111
(*.f64 (*.f64 #s(literal 4 binary64) a) c)overflow27
(*.f64 b b)overflow91
+.f64(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))cancellation1010
sqrt.f64(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))uflow-rescue60
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))underflow6
(*.f64 (*.f64 #s(literal 4 binary64) a) c)underflow36
(*.f64 b b)underflow39
-.f64(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))cancellation40
-.f64(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))nan-rescue40
(*.f64 b b)overflow91
(*.f64 (*.f64 #s(literal 4 binary64) a) c)overflow27
/.f64(/.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))o/n10
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))overflow111
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))overflow1
(*.f64 (*.f64 #s(literal 4 binary64) a) c)overflow27
(*.f64 b b)overflow91
Confusion
Predicted +Predicted -
+1411
-2193
Precision
0.8703703703703703
Recall
0.9929577464788732
Confusion?
Predicted +Predicted MaybePredicted -
+14101
-21093
Precision?
0.8703703703703703
Recall?
0.9929577464788732
Freqs
test
numberfreq
094
198
263
31
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
8.095458984375
Average Time
0.031622886657714844
Samples
157.0ms1 872×0valid
144.0ms624×2valid
85.0ms516×1valid
18.0ms60×3valid
Compiler

Compiled 2 748 to 696 computations (74.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 261.0ms
ival-mult: 82.0ms (31.5% of total)
adjust: 48.0ms (18.4% of total)
ival-sqrt: 35.0ms (13.4% of total)
ival-div: 31.0ms (11.9% of total)
ival-sub: 22.0ms (8.4% of total)
ival-add: 22.0ms (8.4% of total)
ival-neg: 14.0ms (5.4% 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)

preprocess123.0ms (7.6%)

Memory
-4.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.1MiB live, 0.1MiB 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
47.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)

simplify23.0ms (1.4%)

Memory
-0.2MiB 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...