Bouland and Aaronson, Equation (24)

Time bar (total: 2.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 31 to 19 computations (38.7% saved)

sample29.0ms (1.3%)

Memory
3.4MiB live, 12.1MiB allocated
Samples
21.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 7.0ms (44% of total)
ival-add: 4.0ms (25.1% of total)
ival-sub: 3.0ms (18.8% of total)
ival-pow2: 2.0ms (12.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain2.0s (88.1%)

Memory
6.3MiB live, 1 509.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
4074(2.2796187559253796e-15 7.056905505376153e+179)31(-7.824661290604517e+28 2.2425850355275993e+217)(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))
240-0-(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))
140-1(-2.5350028687259415e+283 -1.484534214141504e-159)(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))
00-0-(*.f64 a a)
00-0-a
00-0-#s(literal 3 binary64)
00-0-#s(literal 1 binary64)
00-0-(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))
00-0-(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
00-0-(*.f64 b b)
00-0-(-.f64 #s(literal 1 binary64) a)
00-0-(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))
00-0-(+.f64 (*.f64 a a) (*.f64 b b))
00-0-(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))
00-0-#s(literal 4 binary64)
00-0-#s(literal 2 binary64)
00-0-(+.f64 #s(literal 3 binary64) a)
00-0-b
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))))nan-rescue830
(*.f64 b b)overflow66
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))overflow158
(*.f64 a a)overflow52
(+.f64 (*.f64 a a) (*.f64 b b))overflow105
(*.f64 b b)overflow66
(*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))overflow129
(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))overflow129
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))overflow76
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))overflow77
(*.f64 a a)overflow52
+.f64(+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a)))nan-rescue240
(*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a))overflow77
(*.f64 a a)overflow52
(*.f64 b b)overflow66
(*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))overflow76
Confusion
Predicted +Predicted -
+3323
-60140
Precision
0.3548387096774194
Recall
0.5892857142857143
Confusion?
Predicted +Predicted MaybePredicted -
+33023
-600140
Precision?
0.3548387096774194
Recall?
0.5892857142857143
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
0163
179
214
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
12.62744140625
Average Time
0.04932594299316406
Samples
289.0ms3 072×0valid
Compiler

Compiled 5 268 to 888 computations (83.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 187.0ms
ival-mult: 80.0ms (42.9% of total)
ival-add: 48.0ms (25.7% of total)
ival-pow2: 26.0ms (13.9% of total)
ival-sub: 24.0ms (12.9% of total)
exact: 5.0ms (2.7% of total)
ival-true: 2.0ms (1.1% of total)
ival-assert: 1.0ms (0.5% of total)

preprocess213.0ms (9.5%)

Memory
2.6MiB live, 60.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044149
1154147
2653145
32940145
46883145
01829
03029
16329
217829
355229
4155829
5283629
6670329
0809126
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
Outputs
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal 4 binary64) a #s(literal 12 binary64)) b) b (fma.f64 (*.f64 (fma.f64 #s(literal -4 binary64) a #s(literal 4 binary64)) a) a (-.f64 (pow.f64 (fma.f64 b b (*.f64 a a)) #s(literal 2 binary64)) #s(literal 1 binary64))))
Symmetry

(abs b)

Compiler

Compiled 29 to 18 computations (37.9% 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
78.0%
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
Compiler

Compiled 58 to 36 computations (37.9% saved)

simplify21.0ms (0.9%)

Memory
-7.3MiB live, 18.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01829
13229
23929
34529
45329
56429
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
Outputs
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (+.f64 #s(literal 3 binary64) a))))) #s(literal 1 binary64))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 #s(literal 3 binary64) a) (*.f64 b b)) (*.f64 (-.f64 #s(literal 1 binary64) a) (*.f64 a a))) #s(literal 4 binary64)) (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) #s(literal 2 binary64))) #s(literal 1 binary64))

soundness0.0ms (0%)

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

Compiled 29 to 18 computations (37.9% saved)

preprocess2.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Remove

(abs b)

Compiler

Compiled 232 to 144 computations (37.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...