Harley's example

Time bar (total: 4.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze276.0ms (6.4%)

Memory
4.2MiB live, 84.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%25%75%0%0%0%0
0%0%25%75%0%0%0%1
0%0%25%75%0%0%0%2
0%0%25%75%0%0%0%3
0%0%25%75%0%0%0%4
0%0%25%75%0%0%0%5
0%0%21.8%75%0%3.1%0%6
0%0%18.7%75%0%6.2%0%7
19%3.1%13.3%75%0%8.6%0%8
19%3.1%13.3%75%0%8.6%0%9
21.6%3.1%11.3%75%0%10.5%0%10
24.6%3.1%9.6%75%0%12.3%0%11
35.6%3.1%5.7%75%0%16.2%0%12
Compiler

Compiled 51 to 27 computations (47.1% saved)

sample1.5s (33.9%)

Memory
2.8MiB live, 141.5MiB allocated
Samples
1.2s243×5exit
119.0ms755×0exit
34.0ms243×0valid
6.0ms15×1valid
1.0ms1exit
1.0ms3valid
1.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 1.3s
ival-pow: 1.1s (82.1% of total)
adjust: 94.0ms (7.2% of total)
ival-div: 42.0ms (3.2% of total)
ival-exp: 23.0ms (1.8% of total)
ival-add: 19.0ms (1.5% of total)
ival-sub: 18.0ms (1.4% of total)
ival-mult: 17.0ms (1.3% of total)
ival-neg: 11.0ms (0.8% of total)
ival-<: 6.0ms (0.5% of total)
ival-and: 2.0ms (0.2% of total)
exact: 2.0ms (0.2% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain2.5s (56.9%)

Memory
4.5MiB live, 1 936.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
160-0-(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
42(71.30730009939774 1.0343209892106666e-22 -6.090380160482421e-302 8.718523250904877e-162)0-(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p)
3251(5.709164567909859e-301 8.489790952281829e-160 -3.2610993053203256e-302 3.799976317348024e-133)0-(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))))
24(2.0470294676071876e+87 6.745750567290619e-55 349.821549996369 -4.5060360383680666e-18)0-(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p)
1248(5.709164567909859e-301 8.489790952281829e-160 -3.2610993053203256e-302 3.799976317348024e-133)0-(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))))
18(2.5206259808927887e-85 21.836624506592894 -6.213575982693698e-218 6.024109542770493e+165)1(1.2348869396838585e-239 1.8941702592059074e-26 3200.6449022521842 7.307675193568447e-145)(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)
00-0-(neg.f64 s)
00-0-#s(literal 1 binary64)
00-0-t
00-0-(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))
00-0-s
00-0-(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n))
00-0-(neg.f64 t)
00-0-(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))
00-0-c_p
08(2.0470294676071876e+87 6.745750567290619e-55 349.821549996369 -4.5060360383680666e-18)0-(exp.f64 (neg.f64 t))
02(9.018422111779043e-135 3.0651745036991106e-109 5.0808859227203777e-8 -25.04329369713531)0-(exp.f64 (neg.f64 s))
00-0-c_n
00-0-(+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))
00-0-(+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))
00-0-(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n))
03(2.299358229790751e-83 131.72242471499916 -3.58735991162686e-147 -2.1381853815778066e-83)0-(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))))cancellation2540
-.f64(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))))cancellation2490
/.f64(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))u/u160
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p)underflow11
(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n))underflow24
(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))underflow14
(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))))underflow8
(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)underflow13
(exp.f64 (neg.f64 s))underflow16
(exp.f64 (neg.f64 t))underflow2
(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))underflow4
(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)underflow8
(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n))underflow17
(-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))))underflow1
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p)underflow9
pow.f64(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)sensitivity80
exp.f64(exp.f64 (neg.f64 t))sensitivity80
pow.f64(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p)sensitivity40
pow.f64(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p)uflow-rescue40
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p)underflow11
(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))underflow7
(exp.f64 (neg.f64 s))underflow8
pow.f64(pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)sensitivity30
pow.f64(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p)uflow-rescue20
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p)underflow9
(exp.f64 (neg.f64 t))underflow1
(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))underflow2
pow.f64(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p)sensitivity20
exp.f64(exp.f64 (neg.f64 s))sensitivity20
Confusion
Predicted +Predicted -
+260
-2300
Precision
0.1015625
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+2600
-23000
Precision?
0.1015625
Recall?
1.0
Freqs
test
numberfreq
2224
324
48
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
15.06787109375
Average Time
0.05885887145996094
Samples
417.0ms2 832×0valid
87.0ms192×1valid
19.0ms36×2valid
12.0ms12×3valid
Compiler

Compiled 7 092 to 1 080 computations (84.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 384.0ms
ival-pow: 132.0ms (34.4% of total)
ival-div: 56.0ms (14.6% of total)
ival-exp: 47.0ms (12.2% of total)
ival-mult: 33.0ms (8.6% of total)
ival-add: 31.0ms (8.1% of total)
ival-sub: 29.0ms (7.6% of total)
ival-neg: 28.0ms (7.3% of total)
adjust: 23.0ms (6% of total)
ival-true: 2.0ms (0.5% of total)
exact: 2.0ms (0.5% of total)
ival-assert: 1.0ms (0.3% of total)

preprocess96.0ms (2.2%)

Memory
0.5MiB live, 8.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
093606
1250606
2673606
31430606
42139606
52759606
63172606
73532606
84111606
94200606
104216606
114216606
02243
03943
16543
210343
314143
418743
523643
629143
733943
835543
936543
1036943
036943
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
Outputs
(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
(*.f64 (/.f64 (/.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 s)) #s(literal -1 binary64))) c_p) (pow.f64 (-.f64 (/.f64 #s(literal -1 binary64) (-.f64 (exp.f64 (neg.f64 t)) #s(literal -1 binary64))) #s(literal -1 binary64)) c_n)) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (exp.f64 (neg.f64 t)) #s(literal -1 binary64))) c_p)) (pow.f64 (-.f64 (/.f64 #s(literal -1 binary64) (-.f64 (exp.f64 (neg.f64 s)) #s(literal -1 binary64))) #s(literal -1 binary64)) c_n))
Compiler

Compiled 43 to 22 computations (48.8% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
89.9%
(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
Compiler

Compiled 86 to 44 computations (48.8% saved)

simplify23.0ms (0.5%)

Memory
-0.9MiB live, 18.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02243
13843
25543
37343
49843
513543
619343
719943
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
Outputs
(/.f64 (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 s))))) c_n)) (*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t)))) c_p) (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 t))))) c_n)))
(/.f64 (*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 s)) #s(literal 1 binary64)))) c_n) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 s)) #s(literal 1 binary64))) c_p)) (*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 t)) #s(literal 1 binary64)))) c_n) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 (neg.f64 t)) #s(literal 1 binary64))) c_p)))

soundness0.0ms (0%)

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

Compiled 43 to 22 computations (48.8% saved)

preprocess3.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Compiler

Compiled 222 to 128 computations (42.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...