Given's Rotation SVD example

Time bar (total: 7.6s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze331.0ms (4.4%)

Memory
-0.2MiB live, 110.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%48.6%51.4%0%0%0%0
0%0%48.6%51.4%0%0%0%1
0%0%48.6%51.4%0%0%0%2
0%0%48.6%51.4%0%0%0%3
0%0%48.6%51.4%0%0%0%4
31.3%15.2%33.4%51.4%0%0%0%5
34.4%16.7%31.9%51.4%0%0%0%6
51.6%25.1%23.6%51.4%0%0%0%7
53.1%25.8%22.8%51.4%0%0%0%8
62.5%30.4%18.2%51.4%0%0%0%9
63.7%31%17.7%51.4%0%0%0%10
68.6%33.3%15.3%51.4%0%0%0%11
69.2%33.7%15%51.4%0%0%0%12
Compiler

Compiled 27 to 21 computations (22.2% saved)

sample45.0ms (0.6%)

Memory
1.1MiB live, 15.7MiB allocated
Samples
21.0ms201×0valid
5.0ms22×2valid
4.0ms24×1valid
4.0ms13×3valid
Precisions
Click to see histograms. Total time spent on operations: 27.0ms
const: 7.0ms (25.6% of total)
ival-mult: 6.0ms (22% of total)
ival-sqrt: 4.0ms (14.6% of total)
ival-div: 3.0ms (11% of total)
ival-add: 3.0ms (11% of total)
adjust: 2.0ms (7.3% of total)
ival-fabs: 1.0ms (3.7% of total)
ival-<: 1.0ms (3.7% of total)
ival-assert: 0.0ms (0% of total)
ival-and: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain7.1s (93.9%)

Memory
54.4MiB live, 4 010.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
710-0-(sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))
320-0-(+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))
200-0-(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
10-0-(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))))
00-0-(*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))))))
00-0-#s(literal 1 binary64)
00-0-#s(literal 4 binary64)
00-0-(*.f64 x x)
00-0-p
00-0-(+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))
00-0-(*.f64 (*.f64 #s(literal 4 binary64) p) p)
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 #s(literal 4 binary64) p)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))oflow-rescue710
(sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))overflow1
(*.f64 #s(literal 4 binary64) p)overflow2
(+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))overflow72
(*.f64 (*.f64 #s(literal 4 binary64) p) p)overflow72
+.f64(+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))cancellation320
sqrt.f64(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))uflow-rescue200
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))underflow7
(*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))))))underflow27
(+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))underflow27
(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x))))underflow13
(*.f64 (*.f64 #s(literal 4 binary64) p) p)underflow53
Confusion
Predicted +Predicted -
+520
-71133
Precision
0.42276422764227645
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+5200
-710133
Precision?
0.42276422764227645
Recall?
1.0
Freqs
test
numberfreq
0133
1123
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
30.26318359375
Average Time
0.11821556091308594
Samples
1.5s17 730×0valid
436.0ms1 980×2valid
342.0ms1 170×3valid
327.0ms2 160×1valid
Compiler

Compiled 13 635 to 2 700 computations (80.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.7s
ival-mult: 531.0ms (31.9% of total)
ival-sqrt: 406.0ms (24.4% of total)
ival-add: 296.0ms (17.8% of total)
ival-div: 216.0ms (13% of total)
adjust: 155.0ms (9.3% of total)
exact: 31.0ms (1.9% of total)
ival-true: 21.0ms (1.3% of total)
ival-assert: 9.0ms (0.5% of total)

preprocess59.0ms (0.8%)

Memory
-1.6MiB live, 5.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03693
19087
219487
340187
466187
599987
6133487
7154487
8169887
9193287
10199987
11202787
12202987
01417
02317
13817
24517
34717
44817
04815
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
Outputs
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
(sqrt.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (fma.f64 (*.f64 p #s(literal 4 binary64)) p (*.f64 x x)))) x #s(literal 1/2 binary64)))
Symmetry

(abs p)

Compiler

Compiled 17 to 14 computations (17.6% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.1%
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
Compiler

Compiled 34 to 28 computations (17.6% saved)

simplify22.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01417
12217
Stop Event
saturated
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
Outputs
(sqrt.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 1 binary64) (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 #s(literal 4 binary64) p) p) (*.f64 x x)))))))
(sqrt.f64 (*.f64 (+.f64 (/.f64 x (sqrt.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 p #s(literal 4 binary64)) p)))) #s(literal 1 binary64)) #s(literal 1/2 binary64)))

soundness0.0ms (0%)

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

Compiled 17 to 14 computations (17.6% saved)

preprocess4.0ms (0%)

Memory
-5.6MiB live, 2.3MiB allocated
Remove

(abs p)

Compiler

Compiled 164 to 136 computations (17.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...