Kahan p9 Example

Time bar (total: 4.4s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze5.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%18.7%81.3%0%0%0%0
0%0%18.7%81.3%0%0%0%1
0%0%18.7%81.3%0%0%0%2
50%9.4%9.4%81.3%0%0%0%3
50%9.4%9.4%81.3%0%0%0%4
87.5%16.4%2.3%81.3%0%0%0%5
87.5%16.4%2.3%81.3%0%0%0%6
96.9%18.1%0.6%81.3%0%0%0%7
96.9%18.1%0.6%81.3%0%0%0%8
99.2%18.6%0.1%81.3%0%0%0%9
99.2%18.6%0.1%81.3%0%0%0%10
99.8%18.7%0%81.3%0%0%0%11
99.8%18.7%0%81.3%0%0%0%12
Compiler

Compiled 27 to 17 computations (37% saved)

sample24.0ms (0.6%)

Memory
0.3MiB live, 10.0MiB allocated
Samples
16.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 4.0ms (36.2% of total)
ival-add: 2.0ms (18.1% of total)
ival-<: 2.0ms (18.1% of total)
ival-sub: 1.0ms (9% of total)
ival-div: 1.0ms (9% of total)
ival-and: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain4.0s (89.6%)

Memory
29.6MiB live, 2 629.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
830-0-(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
00-0-(*.f64 (-.f64 x y) (+.f64 x y))
00-0-(*.f64 x x)
00-0-(+.f64 (*.f64 x x) (*.f64 y y))
00-0-y
00-0-(+.f64 x y)
00-0-(-.f64 x y)
00-0-(*.f64 y y)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))u/u420
(*.f64 (-.f64 x y) (+.f64 x y))underflow42
(*.f64 y y)underflow82
(*.f64 x x)underflow125
(+.f64 (*.f64 x x) (*.f64 y y))underflow42
/.f64(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))o/o410
(*.f64 (-.f64 x y) (+.f64 x y))overflow41
(*.f64 y y)overflow41
(+.f64 (*.f64 x x) (*.f64 y y))overflow41
Confusion
Predicted +Predicted -
+830
-0173
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+8300
-00173
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0173
183
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
17.582763671875
Average Time
0.06868267059326172
Samples
1.4s23 040×0valid
Compiler

Compiled 6 660 to 1 800 computations (73% saved)

Precisions
Click to see histograms. Total time spent on operations: 816.0ms
ival-mult: 384.0ms (47% of total)
ival-add: 177.0ms (21.7% of total)
ival-div: 124.0ms (15.2% of total)
ival-sub: 106.0ms (13% of total)
ival-true: 17.0ms (2.1% of total)
ival-assert: 8.0ms (1% of total)

preprocess386.0ms (8.7%)

Memory
0.1MiB live, 39.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02583
19483
230175
379975
4223975
5487675
6551275
7594775
8628275
9635575
10688375
0915
01615
12915
25515
312015
424515
553215
6127815
7298915
8519315
9673615
10728915
11752015
12761615
13762515
14762515
15768315
16768715
17768715
18768715
19794615
0800614
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
Outputs
(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
(/.f64 (fma.f64 (neg.f64 y) y (*.f64 x x)) (fma.f64 y y (*.f64 x x)))
Symmetry

(abs y)

(abs x)

Compiler

Compiled 15 to 9 computations (40% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.6%
(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
Compiler

Compiled 30 to 18 computations (40% saved)

simplify20.0ms (0.5%)

Memory
2.3MiB live, 18.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
11415
21915
32115
42215
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
Outputs
(/.f64 (*.f64 (-.f64 x y) (+.f64 x y)) (+.f64 (*.f64 x x) (*.f64 y y)))
(/.f64 (*.f64 (+.f64 y x) (-.f64 x y)) (+.f64 (*.f64 y y) (*.f64 x x)))

soundness0.0ms (0%)

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

Compiled 15 to 9 computations (40% saved)

preprocess21.0ms (0.5%)

Memory
-4.7MiB live, 4.8MiB allocated
Remove

(abs x)

(abs y)

Compiler

Compiled 264 to 152 computations (42.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...