Herbie run

Date:Tuesday, December 24th, 2024
Commit:e899e8c7 on sound-simplify
Seed:2024359
Parameters:256 points for 4 iterations
Flags:
localize:costslocalize:errorsreduce:regimesreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default
Memory:292 827.9 MB

Time bar (total: 4.6min)

sample1.3min (29.2%)

Memory
668.9MiB live, 89 452.4MiB allocated; 30.6s collecting garbage
Samples
32.8s284 813×0valid
16.5s44 306×1valid
8.6s17 200×2valid
1.0s4 121×0invalid
296.0ms202×5exit
280.0ms433×3valid
168.0ms979×0exit
Precisions
Click to see histograms. Total time spent on operations: 46.2s
ival-mult: 10.7s (23.1% of total)
adjust: 4.8s (10.5% of total)
ival-pow: 4.8s (10.4% of total)
ival-add: 4.2s (9% of total)
const: 4.0s (8.6% of total)
ival-sub: 4.0s (8.6% of total)
ival-div: 3.7s (8% of total)
ival-sin: 2.4s (5.1% of total)
ival-cos: 2.0s (4.3% of total)
ival-<=: 2.0s (4.3% of total)
ival-exp: 602.0ms (1.3% of total)
ival-sqrt: 515.0ms (1.1% of total)
exact: 470.0ms (1% of total)
ival-neg: 421.0ms (0.9% of total)
ival-and: 380.0ms (0.8% of total)
ival-pow2: 370.0ms (0.8% of total)
ival-==: 201.0ms (0.4% of total)
ival-assert: 144.0ms (0.3% of total)
ival-true: 142.0ms (0.3% of total)
ival-atan: 103.0ms (0.2% of total)
ival-log1p: 90.0ms (0.2% of total)
ival-expm1: 78.0ms (0.2% of total)
ival-<: 70.0ms (0.2% of total)
ival-tan: 67.0ms (0.1% of total)
ival-pi: 32.0ms (0.1% of total)
ival-hypot: 31.0ms (0.1% of total)
ival-if: 6.0ms (0% of total)
ival-fabs: 5.0ms (0% of total)
Bogosity

simplify48.6s (17.6%)

Memory
997.4MiB live, 47 284.9MiB allocated; 9.1s collecting garbage
Algorithm
342×egg-herbie
Stop Event
441×iter limit
266×node limit
87×saturated
unsound
Counts
10 448 → 10 305

rewrite33.4s (12.1%)

Memory
93.6MiB live, 36 300.9MiB allocated; 7.3s collecting garbage
Stop Event
297×iter limit
146×node limit
11×saturated
Counts
1 972 → 73 664

derivations31.3s (11.4%)

Memory
34.7MiB live, 22 217.8MiB allocated; 5.2s collecting garbage
Stop Event
253×iter limit
170×node limit
27×fuel
15×done
saturated
Compiler

Compiled 25 550 to 2 680 computations (89.5% saved)

localize22.5s (8.2%)

Memory
40.2MiB live, 25 540.8MiB allocated; 5.6s collecting garbage
Samples
8.1s29 457×0valid
4.8s5 459×1valid
4.0s2 840×2valid
301.0ms159×3valid
152.0ms427×0invalid
39.0ms5exit
17.0ms48×0exit
3.0ms4valid
Compiler

Compiled 35 353 to 4 158 computations (88.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.1s
ival-mult: 4.0s (31% of total)
adjust: 2.2s (16.8% of total)
ival-div: 1.8s (13.6% of total)
ival-add: 1.6s (12.5% of total)
ival-pow: 879.0ms (6.7% of total)
ival-sub: 743.0ms (5.7% of total)
const: 646.0ms (4.9% of total)
ival-sin: 231.0ms (1.8% of total)
ival-cos: 207.0ms (1.6% of total)
ival-neg: 147.0ms (1.1% of total)
ival-sqrt: 127.0ms (1% of total)
ival-expm1: 89.0ms (0.7% of total)
ival-exp: 82.0ms (0.6% of total)
exact: 59.0ms (0.5% of total)
ival-pow2: 54.0ms (0.4% of total)
ival-true: 31.0ms (0.2% of total)
ival-log: 31.0ms (0.2% of total)
ival-log1p: 20.0ms (0.2% of total)
ival-assert: 16.0ms (0.1% of total)
ival-pi: 16.0ms (0.1% of total)
ival-cosh: 8.0ms (0.1% of total)
ival-fabs: 7.0ms (0.1% of total)
ival-tan: 7.0ms (0.1% of total)
ival-atan: 7.0ms (0.1% of total)
ival-sinh: 4.0ms (0% of total)

eval16.8s (6.1%)

Memory
-131.8MiB live, 22 208.3MiB allocated; 5.0s collecting garbage
Compiler

Compiled 3 861 076 to 316 072 computations (91.8% saved)

explain10.7s (3.9%)

Memory
47.4MiB live, 12 952.5MiB allocated; 2.6s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation13103
+.f64#fcancellation356102
-.f64(-.f64 (*.f64 #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64) t) #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64))oflow-left2170
sqrt.f64#foflow-rescue2060
/.f64#fo/o1810
log.f64(log.f64 (+.f64 #s(literal 1 binary64) x))sensitivity1723
/.f64#fn/o1490
pow.f64(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)sensitivity1210
-.f64#fnan-rescue950
/.f64#fu/n820
/.f64#fn/u600
/.f64#fo/n540
/.f64#fu/u470
+.f64#fnan-rescue450
*.f64#fn*u380
*.f64#fn*o300
pow.f64(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)oflow-rescue180
(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)overflow33
(/.f64 i n)overflow18
(+.f64 #s(literal 1 binary64) (/.f64 i n))overflow18
sqrt.f64#fuflow-rescue160
Confusion
Predicted +Predicted -
+3883242
-1056522
Precision
0.9736710130391174
Recall
0.9413333333333334
Confusion?
Predicted +Predicted MaybePredicted -
+388317369
-1051916331
Precision?
0.9319852941176471
Recall?
0.9832727272727273
Freqs
test
numberfreq
06764
13546
2400
342
Total Confusion?
Predicted +Predicted MaybePredicted -
+3010
-209
Precision?
0.9393939393939394
Recall?
1.0
Samples
1.8s16 320×0valid
1.2s3 698×1valid
759.0ms1 456×2valid
22.0ms30×3valid
Compiler

Compiled 7 535 to 1 486 computations (80.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.6s
ival-mult: 561.0ms (21.4% of total)
ival-div: 447.0ms (17.1% of total)
adjust: 416.0ms (15.9% of total)
ival-add: 265.0ms (10.1% of total)
ival-sub: 240.0ms (9.2% of total)
ival-pow: 216.0ms (8.3% of total)
ival-sin: 116.0ms (4.4% of total)
ival-cos: 102.0ms (3.9% of total)
ival-neg: 73.0ms (2.8% of total)
const: 49.0ms (1.9% of total)
ival-exp: 27.0ms (1% of total)
ival-sqrt: 22.0ms (0.8% of total)
exact: 20.0ms (0.8% of total)
ival-true: 19.0ms (0.7% of total)
ival-pow2: 17.0ms (0.6% of total)
ival-assert: 9.0ms (0.3% of total)
ival-atan: 5.0ms (0.2% of total)
ival-log1p: 5.0ms (0.2% of total)
ival-tan: 4.0ms (0.2% of total)
ival-expm1: 4.0ms (0.2% of total)
ival-pi: 2.0ms (0.1% of total)

preprocess9.3s (3.4%)

Memory
244.2MiB live, 8 966.6MiB allocated; 2.4s collecting garbage
Algorithm
42×egg-herbie
Stop Event
82×iter limit
53×saturated
33×node limit
Compiler

Compiled 57 427 to 8 556 computations (85.1% saved)

regimes6.1s (2.2%)

Memory
192.2MiB live, 7 952.0MiB allocated; 938ms collecting garbage
Counts
5 231 → 535
Calls

96 calls:

936.0ms
x
470.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
301.0ms
d
275.0ms
b
228.0ms
a
Compiler

Compiled 8 515 to 5 579 computations (34.5% saved)

prune5.6s (2%)

Memory
-174.3MiB live, 8 508.9MiB allocated; 1.3s collecting garbage
Counts
82 209 → 2 018
Compiler

Compiled 165 908 to 68 602 computations (58.7% saved)

analyze4.5s (1.7%)

Memory
125.7MiB live, 4 463.9MiB allocated; 1.0s collecting garbage
Algorithm
43×search
random
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%54.5%45.5%0%0%0%0
21.4%11.7%42.9%45.5%0%0%0%1
37.4%20.4%34.1%45.5%0%0%0%2
48.7%26.2%27.7%45.5%0%0.6%0%3
57.7%30.7%22.6%45.5%0%1.2%0%4
71.2%37.7%15.3%45.5%0%1.6%0%5
72.9%38.4%14.3%45.5%0%1.8%0%6
77.9%40.7%11.6%45.5%0%2.2%0%7
81.5%42.6%9.7%45.5%0%2.3%0%8
84.1%43.8%8.3%45.5%0%2.5%0%9
86.2%44.6%7.2%45.5%0%2.7%0%10
88.2%45.6%6.1%45.5%0%2.8%0%11
89.1%45.9%5.6%45.5%0%2.9%0%12
Compiler

Compiled 1 402 to 721 computations (48.6% saved)

series3.6s (1.3%)

Memory
-312.1MiB live, 4 618.5MiB allocated; 920ms collecting garbage
Counts
1 972 → 10 448
Calls

876 calls:

TimeVariablePointExpression
84.0ms
t
@0
((- (* 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (- (* 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (* (neg t) (- (/ 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)) (neg t) (- (/ 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (- (* 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (+ (* 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t) -170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (/ 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 t))
62.0ms
x
@0
((- (exp (* (log x) 2)) 1) (/ -10 (- (exp (* (log x) 2)) 1)) (* (log x) 2) (log x) (/ 10 (- 1 (* x x))) (* (+ (* x x) 1) 10) (+ (* x x) 1) (/ 10 (- 1 (* x x))) (+ (* (* x x) -10) 10) (* x x) (+ (* (- x 1) 1) (* (- x 1) x)) (/ -10 (+ (* (- x 1) 1) (* (- x 1) x))) (- x 1) (* (- x 1) x) (/ -10 (/ (* (- x 1) (+ (pow x 3) 1)) (+ (* x x) (- 1 x)))) (/ (* (- x 1) (+ (pow x 3) 1)) (+ (* x x) (- 1 x))) (* (- x 1) (+ (pow x 3) 1)) (+ (pow x 3) 1))
59.0ms
eps
@inf
((- (pow (+ x eps) 5) (pow x 5)) (* (+ (* (/ x eps) 5) 1) (pow eps 5)) (+ (* (/ x eps) 5) 1) (/ x eps) (- (pow (+ x eps) 5) (pow x 5)) (pow eps 5) (- (* 5 eps) (* (/ (* eps eps) x) -10)) (- (pow (+ x eps) 5) (pow x 5)) (* (- (* 5 eps) (* (/ (* eps eps) x) -10)) (pow x 4)) (* 5 eps) (+ (* (* 10 (* x x)) eps) (* (pow x 3) 10)) (- (pow (+ x eps) 5) (pow x 5)) (* (+ (* (+ (* (* 10 (* x x)) eps) (* (pow x 3) 10)) eps) (* (pow x 4) 5)) eps) (+ (* (+ (* (* 10 (* x x)) eps) (* (pow x 3) 10)) eps) (* (pow x 4) 5)) (+ (* -10 (* x x)) (/ (* (pow x 3) 10) (neg eps))) (/ (+ (* 5 x) (/ (+ (* -10 (* x x)) (/ (* (pow x 3) 10) (neg eps))) (neg eps))) (neg eps)) (/ (+ (* -10 (* x x)) (/ (* (pow x 3) 10) (neg eps))) (neg eps)) (/ (* (pow x 3) 10) (neg eps)) (/ (* eps eps) x) (* (/ (* eps eps) x) -10) (* 10 (* x x)) (* (pow x 3) 10) (* (pow x 4) 5) (* (neg (- (/ (+ (* 5 x) (/ (+ (* -10 (* x x)) (/ (* (pow x 3) 10) (neg eps))) (neg eps))) (neg eps)) 1)) (pow eps 5)) (- (pow (+ x eps) 5) (pow x 5)))
50.0ms
r
@-inf
((- (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 9/2) (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) (+ (* (* -3/8 (* w r)) (* w r)) (+ (/ 2 (* r r)) 3)) (* -3/8 (* w r)) (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 9/2) (- (/ 2 (* r r)) 3/2) (/ 2 (* r r)) (* r r) (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 9/2) (- (/ 2 (* r r)) (+ (* (* (* 3/8 (* r r)) w) w) 3/2)) (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 9/2) (- (+ 3 (/ 2 (* r r))) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) (+ 3 (/ 2 (* r r))) (- (- (+ 3 (/ 2 (* r r))) (* (* (* (* (+ (* -2 v) 3) 1/8) w) (* w r)) (/ r (- 1 v)))) 9/2) (* (+ (* -2 v) 3) 1/8) (- (+ 3 (/ 2 (* r r))) (* (* (* (* (+ (* -2 v) 3) 1/8) w) (* w r)) (/ r (- 1 v)))) (* (* 3/8 (* r r)) w) (+ (* (* (* 3/8 (* r r)) w) w) 3/2) (* 1/8 (- 3 (* 2 v))) (* (* w w) r) (/ (* (* 1/8 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v)) (* (* (* w w) r) r) (* (* (* (* (+ (* -2 v) 3) 1/8) w) (* w r)) (/ r (- 1 v))) (* (* (* (+ (* -2 v) 3) 1/8) w) (* w r)) (* (* (+ (* -2 v) 3) 1/8) w))
47.0ms
a
@inf
((/ (+ (sqrt (+ (* -4 (* c a)) (* b b))) b) (* -2 a)) (+ (sqrt (+ (* -4 (* c a)) (* b b))) b) (sqrt (+ (* -4 (* c a)) (* b b))) (+ (* -4 (* c a)) (* b b)) (/ (- (neg b) (sqrt (- (* b b) (* 4 (* a c))))) (* 2 a)) (/ c (neg b)) (neg b) (/ (- (neg b) (sqrt (- (* b b) (* 4 (* a c))))) (* 2 a)) (- (neg b) (sqrt (- (* b b) (* 4 (* a c))))) (sqrt (- (* b b) (* 4 (* a c)))) (/ (- (neg b) (sqrt (- (* b b) (* 4 (* a c))))) (* 2 a)) (/ (+ (* (/ (* c c) b) (/ a b)) c) (neg b)) (+ (* (/ (* c c) b) (/ a b)) c) (/ (* c c) b) (+ (* (neg b) b) (+ (* -4 (* c a)) (* b b))) (/ (/ (+ (* (neg b) b) (+ (* -4 (* c a)) (* b b))) (- b (sqrt (+ (* -4 (* c a)) (* b b))))) (* 2 a)) (/ (+ (* (neg b) b) (+ (* -4 (* c a)) (* b b))) (- b (sqrt (+ (* -4 (* c a)) (* b b))))) (- (* b b) (* 4 (* a c))) (- b (sqrt (+ (* -4 (* c a)) (* b b)))))

bsearch2.6s (0.9%)

Memory
-24.8MiB live, 2 354.5MiB allocated; 316ms collecting garbage
Algorithm
152×binary-search
91×left-value
Stop Event
143×narrow-enough
predicate-same
predicate-failed
Samples
1.0s9 185×0valid
103.0ms236×2valid
92.0ms451×1valid
65.0ms878×0invalid
Compiler

Compiled 116 195 to 60 619 computations (47.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 918.0ms
ival-mult: 346.0ms (37.7% of total)
ival-div: 121.0ms (13.2% of total)
ival-sub: 118.0ms (12.9% of total)
ival-add: 101.0ms (11% of total)
ival-pow: 85.0ms (9.3% of total)
ival-neg: 51.0ms (5.6% of total)
adjust: 35.0ms (3.8% of total)
ival-sqrt: 26.0ms (2.8% of total)
exact: 9.0ms (1% of total)
ival-true: 8.0ms (0.9% of total)
const: 5.0ms (0.5% of total)
ival-assert: 4.0ms (0.4% of total)
ival-expm1: 4.0ms (0.4% of total)
ival-exp: 3.0ms (0.3% of total)
ival-pi: 2.0ms (0.2% of total)

start2.0ms (0%)

Memory
5.4MiB live, 5.4MiB allocated; 0ms collecting garbage

end0.0ms (0%)

Memory
0.7MiB live, 0.6MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...