Herbie run

Date:Tuesday, March 18th, 2025
Commit:78869eed on main
Seed:2025077
Parameters:256 points for 4 iterations
Flags:
reduce:regimesreduce:binary-searchreduce:branch-expressionsreduce:simplifysetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default
Memory:173 147.6 MB

Time bar (total: 2.7min)

sample1.1min (41.6%)

Memory
1 159.2MiB live, 71 890.3MiB allocated; 26.6s collecting garbage
Samples
28.0s284 930×0valid
12.4s44 043×1valid
8.2s17 371×2valid
392.0ms4 105×0invalid
222.0ms202×5exit
201.0ms408×3valid
125.0ms964×0exit
Precisions
Click to see histograms. Total time spent on operations: 36.5s
ival-mult: 8.6s (23.5% of total)
ival-pow: 4.6s (12.7% of total)
ival-add: 4.5s (12.2% of total)
adjust: 4.0s (11.1% of total)
ival-div: 4.0s (11.1% of total)
ival-sub: 2.9s (7.9% of total)
ival-sin: 2.2s (6.1% of total)
ival-cos: 1.7s (4.7% of total)
const: 1.3s (3.5% of total)
ival-exp: 569.0ms (1.6% of total)
ival-sqrt: 433.0ms (1.2% of total)
ival-neg: 365.0ms (1% of total)
ival-pow2: 300.0ms (0.8% of total)
exact: 280.0ms (0.8% of total)
ival-log1p: 155.0ms (0.4% of total)
ival-assert: 120.0ms (0.3% of total)
ival-expm1: 116.0ms (0.3% of total)
ival-atan: 70.0ms (0.2% of total)
ival-tan: 60.0ms (0.2% of total)
ival-pi: 47.0ms (0.1% of total)
ival-hypot: 42.0ms (0.1% of total)
ival-<=: 12.0ms (0% of total)
ival-==: 10.0ms (0% of total)
ival-true: 10.0ms (0% of total)
ival-and: 9.0ms (0% of total)
ival-if: 6.0ms (0% of total)
ival-fabs: 5.0ms (0% of total)
ival-<: 1.0ms (0% of total)
Bogosity

rewrite30.9s (19.2%)

Memory
646.8MiB live, 29 377.0MiB allocated; 9.3s collecting garbage
Stop Event
372×iter limit
145×node limit
saturated
unsound
Counts
18 777 → 40 002

preprocess11.0s (6.8%)

Memory
313.9MiB live, 10 813.8MiB allocated; 2.4s collecting garbage
Stop Event
84×iter limit
64×node limit
20×saturated
Compiler

Compiled 67 125 to 15 922 computations (76.3% saved)

explain10.7s (6.7%)

Memory
-470.2MiB live, 12 328.1MiB allocated; 3.4s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation12980
+.f64#fcancellation365100
-.f64(-.f64 (*.f64 #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64) t) #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64))oflow-left2220
sqrt.f64#foflow-rescue2040
/.f64#fo/o1800
log.f64(log.f64 (+.f64 #s(literal 1 binary64) x))sensitivity1770
/.f64#fn/o1610
pow.f64(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)sensitivity1290
-.f64#fnan-rescue1010
/.f64#fu/n860
/.f64#fn/u530
/.f64#fo/n500
+.f64#fnan-rescue450
/.f64#fu/u380
*.f64#fn*u370
*.f64#fn*o200
pow.f64(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)oflow-rescue120
(pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n)overflow41
(/.f64 i n)overflow12
(+.f64 #s(literal 1 binary64) (/.f64 i n))overflow12
sqrt.f64#fuflow-rescue60
Confusion
Predicted +Predicted -
+3886243
-926531
Precision
0.9768728004022121
Recall
0.941147977718576
Confusion?
Predicted +Predicted MaybePredicted -
+388617766
-921796352
Precision?
0.937471158283341
Recall?
0.9840155001210947
Freqs
test
numberfreq
06774
13542
2391
345
Total Confusion?
Predicted +Predicted MaybePredicted -
+3010
-209
Precision?
0.9393939393939394
Recall?
1.0
Samples
2.0s3 750×1valid
1.5s16 290×0valid
952.0ms1 434×2valid
19.0ms30×3valid
Compiler

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

Precisions
Click to see histograms. Total time spent on operations: 3.4s
ival-add: 976.0ms (28.8% of total)
ival-mult: 682.0ms (20.1% of total)
ival-pow: 466.0ms (13.7% of total)
adjust: 410.0ms (12.1% of total)
ival-div: 241.0ms (7.1% of total)
ival-sub: 189.0ms (5.6% of total)
ival-sin: 107.0ms (3.2% of total)
ival-cos: 105.0ms (3.1% of total)
const: 60.0ms (1.8% of total)
ival-exp: 36.0ms (1.1% of total)
ival-sqrt: 21.0ms (0.6% of total)
exact: 19.0ms (0.6% of total)
ival-true: 18.0ms (0.5% of total)
ival-neg: 16.0ms (0.5% of total)
ival-pow2: 14.0ms (0.4% of total)
ival-assert: 10.0ms (0.3% of total)
ival-atan: 7.0ms (0.2% of total)
ival-log1p: 5.0ms (0.1% of total)
ival-tan: 4.0ms (0.1% of total)
ival-expm1: 4.0ms (0.1% of total)
ival-pi: 2.0ms (0.1% of total)

eval8.9s (5.6%)

Memory
-314.0MiB live, 11 390.2MiB allocated; 3.5s collecting garbage
Compiler

Compiled 2 242 367 to 196 276 computations (91.2% saved)

derivations8.7s (5.4%)

Memory
1.0MiB live, 7 169.1MiB allocated; 2.7s collecting garbage
Stop Event
27×fuel
15×done
Compiler

Compiled 22 524 to 2 505 computations (88.9% saved)

regimes5.5s (3.4%)

Memory
-95.4MiB live, 7 681.7MiB allocated; 1.3s collecting garbage
Counts
4 463 → 517
Calls

96 calls:

760.0ms
x
318.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
243.0ms
b
225.0ms
d
213.0ms
c
Compiler

Compiled 7 986 to 5 381 computations (32.6% saved)

analyze4.7s (2.9%)

Memory
86.1MiB live, 4 617.9MiB allocated; 1.5s 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)

prune4.0s (2.5%)

Memory
-142.0MiB live, 6 366.4MiB allocated; 1.0s collecting garbage
Counts
48 298 → 1 873
Compiler

Compiled 139 935 to 61 699 computations (55.9% saved)

series4.0s (2.5%)

Memory
390.4MiB live, 5 775.0MiB allocated; 811ms collecting garbage
Counts
3 306 → 15 471
Calls

888 calls:

TimeVariablePointExpression
57.0ms
n
@0
((/ (* 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1)) (/ i n)) (* 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1)) 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1) (* (log (+ 1 (/ i n))) n) (log (+ 1 (/ i n))) (/ i n) i n (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (+ (* (- 1/2 (/ 1/2 n)) i) 1) i) (+ (* (- 1/2 (/ 1/2 n)) i) 1) (- 1/2 (/ 1/2 n)) 1/2 (/ 1/2 n) 1 (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (pow (+ 1 (/ i n)) n) (+ 1 (/ i n)) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (- (log i) (log n)) n) (- (log i) (log n)) (log i) (log n))
53.0ms
t
@-inf
((+ (* (+ 1 (* t 1/5000000000000000)) (+ 1 (* t 1/5000000000000000))) (- -1 (* 2 (* t 1/5000000000000000)))) (* (+ (cosh (* (log t) 2)) (sinh (* (log t) 2))) 1/25000000000000000000000000000000) (+ (cosh (* (log t) 2)) (sinh (* (log t) 2))) (cosh (* (log t) 2)) (* (log t) 2) (log t) t 2 (sinh (* (log t) 2)) 1/25000000000000000000000000000000)
53.0ms
i
@0
((/ (* 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1)) (/ i n)) (* 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1)) 100 (- (exp (* (log (+ 1 (/ i n))) n)) 1) (* (log (+ 1 (/ i n))) n) (log (+ 1 (/ i n))) (/ i n) i n (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (+ (* (- 1/2 (/ 1/2 n)) i) 1) i) (+ (* (- 1/2 (/ 1/2 n)) i) 1) (- 1/2 (/ 1/2 n)) 1/2 (/ 1/2 n) 1 (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (pow (+ 1 (/ i n)) n) (+ 1 (/ i n)) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (- (log i) (log n)) n) (- (log i) (log n)) (log i) (log n))
42.0ms
d
@inf
((/ (+ (* a c) (* b d)) (+ (* c c) (* d d))) (/ (+ (* a (/ c d)) b) d) (+ (* a (/ c d)) b) (* (+ (* (/ a b) (/ c d)) 1) b) (+ (* (/ a b) (/ c d)) 1) (/ a b) a b (/ c d) c d 1 (/ (+ (* a c) (* b d)) (+ (* c c) (* d d))) (/ (+ (* a (/ c d)) b) d) (* a (/ c (* d d))) (/ c (* d d)) (* d d) (/ (+ (* a c) (* b d)) (+ (* c c) (* d d))) (/ (+ (* a (/ c d)) b) d) (* (/ a d) (/ c d)) (/ a d) (/ (+ (* a c) (* b d)) (+ (* c c) (* d d))) (/ (+ (* a (/ c d)) b) d) (+ (* a (/ c d)) b) (* (/ c d) a) (/ (+ (* a c) (* b d)) (+ (* c c) (* d d))) (/ (+ (* a (/ c d)) b) d) (+ (* a (/ c d)) b) (+ (* (/ a d) c) (* (/ b c) c)) (* (/ b c) c) (/ b c))
42.0ms
n
@0
((* (/ (- (exp (* (log (+ 1 (/ i n))) n)) 1) (/ i n)) 100) (/ (- (exp (* (log (+ 1 (/ i n))) n)) 1) (/ i n)) (- (exp (* (log (+ 1 (/ i n))) n)) 1) (* (log (+ 1 (/ i n))) n) (log (+ 1 (/ i n))) (/ i n) i n 100 (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (+ (* (- 1/2 (/ 1/2 n)) i) 1) i) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (- (pow (+ 1 (/ i n)) n) 1) (* (+ (* (- 1/2 (/ 1/2 n)) i) 1) i) (+ (* (- 1/2 (/ 1/2 n)) i) 1) (* -1/2 (/ i n)) -1/2 (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (/ (* (- (exp i) 1) n) i) (* (- (exp i) 1) n) (- (exp i) 1) (* 100 (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))) (/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n)) (+ (* (+ (* (* n i) (- (+ (* (pow n -2) 1/3) 1/6) (/ 1/2 n))) (* (- 1/2 (/ 1/2 n)) n)) i) n) (+ (* (* n i) (- (+ (* (pow n -2) 1/3) 1/6) (/ 1/2 n))) (* (- 1/2 (/ 1/2 n)) n)) (* n i) (- (+ (* (pow n -2) 1/3) 1/6) (/ 1/2 n)) (+ (* (pow n -2) 1/3) 1/6) (pow n -2) -2 1/3 1/6 (/ 1/2 n) 1/2 (* (- 1/2 (/ 1/2 n)) n) (- 1/2 (/ 1/2 n)))

bsearch2.9s (1.8%)

Memory
-46.2MiB live, 3 601.5MiB allocated; 689ms collecting garbage
Algorithm
156×binary-search
85×left-value
Stop Event
150×narrow-enough
predicate-same
Samples
1.0s8 374×0valid
441.0ms1 091×1valid
208.0ms267×2valid
91.0ms1 124×0invalid
61.0ms170×0exit
13.0ms12×3valid
Compiler

Compiled 116 536 to 65 740 computations (43.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-mult: 394.0ms (28% of total)
ival-pow: 216.0ms (15.4% of total)
ival-sub: 177.0ms (12.6% of total)
ival-div: 167.0ms (11.9% of total)
ival-add: 158.0ms (11.2% of total)
adjust: 116.0ms (8.3% of total)
ival-exp: 92.0ms (6.5% of total)
ival-neg: 35.0ms (2.5% of total)
ival-sqrt: 19.0ms (1.4% of total)
exact: 9.0ms (0.6% of total)
ival-true: 8.0ms (0.6% of total)
const: 7.0ms (0.5% of total)
ival-assert: 5.0ms (0.4% of total)
ival-expm1: 2.0ms (0.1% of total)
ival-pi: 1.0ms (0.1% of total)

simplify2.6s (1.6%)

Memory
-76.0MiB live, 2 131.5MiB allocated; 455ms collecting garbage
Stop Event
34×node limit
saturated

start20.0ms (0%)

Memory
-44.4MiB live, 4.5MiB allocated; 24ms collecting garbage

end0.0ms (0%)

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

Profiling

Loading profile data...