quadp (p42, positive)

Time bar (total: 4.3s)

analyze152.0ms (3.5%)

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 21 to 15 computations (28.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 88.0ms
Operation ival-mult, time spent: 34.0ms, 38.0% of total-time
Operation ival-sqrt, time spent: 18.0ms, 20.0% of total-time
Operation ival-add, time spent: 12.0ms, 14.0% of total-time
Operation ival-div, time spent: 9.0ms, 10.0% of total-time
Operation ival-sub, time spent: 7.0ms, 8.0% of total-time
Operation ival-neg, time spent: 7.0ms, 8.0% of total-time
Operation const, time spent: 2.0ms, 2.0% of total-time

sample1.8s (41.7%)

Results
1.4s7564×0valid
167.0ms955×0invalid
124.0ms691×0infinite
2.0ms0valid
Precisions
Click to see histograms. Total time spent on operations: 877.0ms
Operation ival-mult, time spent: 276.0ms, 31.0% of total-time
Operation ival-sub, time spent: 167.0ms, 19.0% of total-time
Operation ival-add, time spent: 153.0ms, 17.0% of total-time
Operation ival-sqrt, time spent: 126.0ms, 14.0% of total-time
Operation ival-div, time spent: 76.0ms, 9.0% of total-time
Operation ival-neg, time spent: 53.0ms, 6.0% of total-time
Operation const, time spent: 27.0ms, 3.0% of total-time
Bogosity

preprocess1.6s (36.8%)

Algorithm
egg-herbie
Rules
1298×div-sub
1250×fma-def
1238×associate-/r*
718×sub-neg
690×associate-/l*
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-b
00-0-(neg.f64 b)
00-0-(-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c)))
00-0-(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
00-0-c
00-0-(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
00-0-(*.f64 b b)
00-0-(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c)))))
00-0-(*.f64 a c)
00-0-4
00-0-(*.f64 4 (*.f64 a c))
00-0-a
00-0-(*.f64 2 a)
00-0-2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
067779
1180691
2439671
31250671
42803671
56734671
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 (neg.f64 a) c))))) (*.f64 2 (neg.f64 a)))
(/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 2 a))
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 (neg.f64 a) c))))) (*.f64 2 (neg.f64 a))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 4 (*.f64 a c))))) (*.f64 2 a)))
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 2 a)))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 4 (*.f64 b c))))) (*.f64 2 b))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))) (*.f64 2 c))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 4 (*.f64 a b))))) (*.f64 2 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 -4 a)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4)))) b) (*.f64 a 2))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 -4 a)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4)))) b) (*.f64 a 2))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 (neg.f64 a) c))))) (*.f64 2 (neg.f64 a)))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (neg.f64 (*.f64 a 2)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 4 c)))) b) (*.f64 a -2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (*.f64 a -2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 4 a)))) b) (*.f64 a -2))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (/.f64 -1/2 a))
(/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 -4 a))))) (*.f64 a 2))
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (*.f64 a 2))
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))) (*.f64 a 2))
(*.f64 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) a) 1/2)
(*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (/.f64 1/2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 4 c)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (*.f64 a 2))
(*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 4 a))))) a) -1/2)
(*.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (/.f64 1/2 a))
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 (neg.f64 a) c))))) (*.f64 2 (neg.f64 a))))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 4 c)))) b) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (*.f64 a 2))
(*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 4 a))))) a) -1/2)
(*.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (/.f64 1/2 a))
(neg.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 4 (*.f64 a c))))) (*.f64 2 a)))
(/.f64 (neg.f64 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c)))))) (*.f64 a 2))
(/.f64 (neg.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 -4 a)))))) (*.f64 a 2))
(*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) a))
(*.f64 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))) a) -1/2)
(*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (/.f64 -1/2 a))
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (*.f64 2 a)))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a (neg.f64 c)))))) (neg.f64 (*.f64 a 2)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 4 c)))) b) (*.f64 a -2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (*.f64 a -2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 4 a)))) b) (*.f64 a -2))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 4 (*.f64 a c) (*.f64 b b))) b) (/.f64 -1/2 a))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 4 (*.f64 b c))))) (*.f64 2 b))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 4 (*.f64 b c))))) (*.f64 b 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 (*.f64 b c) -4))) a) (*.f64 b 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 b (*.f64 c -4)))) a) (*.f64 b 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 c (*.f64 b -4)))) a) (*.f64 b 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 b -4) (*.f64 a a))) a) (*.f64 b 2))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))) (*.f64 2 c))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 c 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 -4 a)))) b) (*.f64 c 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 c 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4)))) b) (*.f64 c 2))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 4 (*.f64 a b))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 -4 (*.f64 b a))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 (*.f64 -4 a) b))) c) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))) c) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 a (*.f64 b -4)))) c) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 a -4) (*.f64 c c))) c) (*.f64 a 2))
Compiler

Compiled 168 to 80 computations (52.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 927.0ms
Operation ival-sub, time spent: 263.0ms, 28.0% of total-time
Operation ival-mult, time spent: 252.0ms, 27.0% of total-time
Operation ival-add, time spent: 181.0ms, 20.0% of total-time
Operation ival-sqrt, time spent: 153.0ms, 16.0% of total-time
Operation ival-div, time spent: 31.0ms, 3.0% of total-time
Operation const, time spent: 27.0ms, 3.0% of total-time
Operation ival-neg, time spent: 20.0ms, 2.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 65 to 41 computations (36.9% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
66.0%
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
Compiler

Compiled 20 to 14 computations (30% saved)

localize697.0ms (16%)

Compiler

Compiled 74 to 33 computations (55.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 425.0ms
Operation ival-sub, time spent: 125.0ms, 29.0% of total-time
Operation ival-mult, time spent: 124.0ms, 29.0% of total-time
Operation ival-sqrt, time spent: 75.0ms, 18.0% of total-time
Operation ival-add, time spent: 64.0ms, 15.0% of total-time
Operation const, time spent: 14.0ms, 3.0% of total-time
Operation ival-div, time spent: 14.0ms, 3.0% of total-time
Operation ival-neg, time spent: 10.0ms, 2.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune2.0ms (0%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done000
Total011
Accuracy
66.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.0%
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
Compiler

Compiled 57 to 36 computations (36.8% saved)

regimes14.0ms (0.3%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
2 → 1
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
Calls

4 calls:

5.0ms
b
3.0ms
a
3.0ms
c
3.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
Results
AccuracySegmentsBranch
66.0%1a
66.0%1b
66.0%1c
66.0%1(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
18×*-commutative
16×+-commutative
14×sub-neg
12×neg-mul-1
12×neg-sub0
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02169
13465
24765
36065
46865
57365
67565
Stop Event
done
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 2 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))) (*.f64 a 2))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c)))) b) (*.f64 a 2))
Compiler

Compiled 19 to 13 computations (31.6% saved)

soundness0.0ms (0%)

end0.0ms (0%)

preprocess64.0ms (1.5%)

Compiler

Compiled 294 to 158 computations (46.3% saved)

Profiling

Loading profile data...