Herbie run

Date:Wednesday, March 5th, 2025
Commit:141e80a8 on main
Seed:2025064
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:28 253.5 MB

Time bar (total: 28.2s)

sample10.9s (38.8%)

Memory
302.5MiB live, 10 453.8MiB allocated; 5.1s collecting garbage
Samples
6.4s70 195×0valid
1.2s4 098×2valid
209.0ms1 906×0invalid
1.0ms11×1valid
Precisions
Click to see histograms. Total time spent on operations: 5.2s
ival-div: 1.2s (23.9% of total)
ival-mult: 1.1s (21.7% of total)
ival-sub: 919.0ms (17.7% of total)
ival-sqrt: 562.0ms (10.9% of total)
ival-neg: 350.0ms (6.8% of total)
ival-add: 309.0ms (6% of total)
adjust: 239.0ms (4.6% of total)
ival-fabs: 120.0ms (2.3% of total)
ival-exp: 109.0ms (2.1% of total)
ival-log: 109.0ms (2.1% of total)
exact: 63.0ms (1.2% of total)
ival-assert: 26.0ms (0.5% of total)
ival-if: 8.0ms (0.2% of total)
ival->=: 3.0ms (0.1% of total)
Bogosity

rewrite5.4s (19.1%)

Memory
191.0MiB live, 5 684.2MiB allocated; 1.1s collecting garbage
Stop Event
77×iter limit
26×node limit
unsound
saturated
Counts
4 634 → 6 978

preprocess2.3s (8%)

Memory
70.1MiB live, 1 999.9MiB allocated; 302ms collecting garbage
Stop Event
18×iter limit
16×node limit
saturated
Compiler

Compiled 9 489 to 1 488 computations (84.3% saved)

explain1.8s (6.2%)

Memory
-67.2MiB live, 1 859.5MiB allocated; 400ms collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64#foflow-rescue2780
-.f64#fcancellation1271
+.f64#fcancellation1230
sqrt.f64#fuflow-rescue710
/.f64#fu/n320
/.f64#fn/u210
-.f64#fnan-rescue140
*.f64(*.f64 (/.f64 x y) z)n*o90
*.f64(*.f64 (/.f64 x y) z)n*u90
Confusion
Predicted +Predicted -
+30118
-2401745
Precision
0.55637707948244
Recall
0.9435736677115988
Confusion?
Predicted +Predicted MaybePredicted -
+301018
-24011744
Precision?
0.5553505535055351
Recall?
0.9435736677115988
Freqs
test
numberfreq
01763
1403
2133
35
Total Confusion?
Predicted +Predicted MaybePredicted -
+400
-005
Precision?
1.0
Recall?
1.0
Samples
331.0ms554×2valid
295.0ms3 644×0valid
114.0ms348×1valid
29.0ms62×3valid
Compiler

Compiled 1 107 to 300 computations (72.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 484.0ms
ival-mult: 154.0ms (31.8% of total)
ival-sub: 79.0ms (16.3% of total)
ival-div: 61.0ms (12.6% of total)
ival-sqrt: 59.0ms (12.2% of total)
adjust: 53.0ms (10.9% of total)
ival-add: 29.0ms (6% of total)
ival-neg: 11.0ms (2.3% of total)
ival-if: 10.0ms (2.1% of total)
ival-fabs: 6.0ms (1.2% of total)
ival-log: 6.0ms (1.2% of total)
ival-exp: 5.0ms (1% of total)
ival-true: 4.0ms (0.8% of total)
exact: 4.0ms (0.8% of total)
ival->=: 3.0ms (0.6% of total)
ival-assert: 2.0ms (0.4% of total)

eval1.7s (5.9%)

Memory
-50.1MiB live, 1 927.5MiB allocated; 427ms collecting garbage
Compiler

Compiled 492 966 to 38 179 computations (92.3% saved)

derivations1.4s (5%)

Memory
-13.5MiB live, 696.3MiB allocated; 116ms collecting garbage
Stop Event
done
fuel
Compiler

Compiled 4 474 to 558 computations (87.5% saved)

series1.2s (4.3%)

Memory
-7.7MiB live, 1 539.1MiB allocated; 232ms collecting garbage
Counts
703 → 3 931
Calls

183 calls:

TimeVariablePointExpression
63.0ms
n
@inf
((/ (neg (+ f n)) (- f n)) (- (+ (* -1 (+ (* (* (/ n f) (/ n f)) (/ (- n (neg n)) f)) (/ (- n (neg n)) f))) (neg (* (/ (- n (neg n)) f) (/ n f)))) 1) (+ (* -1 (+ (* (* (/ n f) (/ n f)) (/ (- n (neg n)) f)) (/ (- n (neg n)) f))) (neg (* (/ (- n (neg n)) f) (/ n f)))) -1 (+ (* (* (/ n f) (/ n f)) (/ (- n (neg n)) f)) (/ (- n (neg n)) f)) (* (/ n f) (/ n f)) (/ n f) n f (/ (- n (neg n)) f) (- n (neg n)) (neg n) (neg (* (/ (- n (neg n)) f) (/ n f))) (* (/ (- n (neg n)) f) (/ n f)) 1 (/ (neg (/ (+ (pow f 3) (pow n 3)) (+ (* f f) (+ (* n n) (* (neg f) n))))) (- f n)) (neg (/ (+ (pow f 3) (pow n 3)) (+ (* f f) (+ (* n n) (* (neg f) n))))) (/ (+ (pow f 3) (pow n 3)) (+ (* f f) (+ (* n n) (* (neg f) n)))) (+ (pow f 3) (pow n 3)) (pow f 3) 3 (pow n 3) (+ (* f f) (+ (* n n) (* (neg f) n))) (+ (* n n) (* (neg f) n)) (* (neg f) n) (neg f) (- f n))
51.0ms
x
@-inf
((neg (log (- (/ 1 x) 1))) (log x) x (neg (log (- (/ 1 x) 1))) (+ (log x) x) (neg (log (- (/ 1 x) 1))) (+ (* (+ (* 1/2 x) 1) x) (log x)) (+ (* 1/2 x) 1) 1/2 1)
46.0ms
b
@inf
((if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (>= b 0) b 0 (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (* 2 c) 2 c (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (neg b) (sqrt (- (* b b) (* (* 4 a) c))) (- (* b b) (* (* 4 a) c)) (* b b) (* (* 4 a) c) (* 4 a) 4 a (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))
41.0ms
c
@inf
((if (>= b 0) (/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))))) (>= b 0) b 0 (/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (neg b) (sqrt (- (* b b) (* (* 4 a) c))) (- (* b b) (* (* 4 a) c)) (* b b) (* (* 4 a) c) (* 4 a) 4 a c (* 2 a) 2 (/ (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))))
41.0ms
a
@-inf
((if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (>= b 0) b 0 (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (* 2 c) 2 c (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (neg b) (sqrt (- (* b b) (* (* 4 a) c))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (sqrt (- (* b b) (* (* 4 a) c))) (- (* b b) (* (* 4 a) c)) (* b b) (* (* 4 a) c) (* 4 a) 4 a (* 2 a) (if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (if (>= b 0) (/ (* -2 c) (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) (* (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) 1/2)) (/ (* -2 c) (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) (* -2 c) -2 (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) (sqrt (+ (* (* -4 a) c) (* b b))) (+ (* (* -4 a) c) (* b b)) (* -4 a) -4 (* (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) 1/2) (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) (- (sqrt (+ (* (* -4 a) c) (* b b))) b) 1/2 (if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (* (sqrt (* (/ c a) -4)) 1/2) (* (/ b a) -1/2)) (sqrt (* (/ c a) -4)) (* (/ c a) -4) (/ c a) (* (/ b a) -1/2) (/ b a) -1/2 (if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* (neg b) (+ (* (* a (/ c (* b b))) -2) 2)) (+ (* (* a (/ c (* b b))) -2) 2) (* a (/ c (* b b))) (/ c (* b b)) (if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* (+ (* (/ b c) -1) (sqrt (* (/ a c) -4))) c) (+ (* (/ b c) -1) (sqrt (* (/ a c) -4))) (/ b c) -1 (sqrt (* (/ a c) -4)) (* (/ a c) -4) (/ a c))

prune986.0ms (3.5%)

Memory
-76.6MiB live, 1 212.3MiB allocated; 222ms collecting garbage
Counts
9 114 → 289
Compiler

Compiled 23 854 to 11 684 computations (51% saved)

bsearch855.0ms (3%)

Memory
-14.6MiB live, 806.8MiB allocated; 135ms collecting garbage
Algorithm
57×binary-search
left-value
Stop Event
45×narrow-enough
12×predicate-same
Samples
369.0ms3 904×0valid
93.0ms696×0invalid
14.0ms80×2valid
Compiler

Compiled 40 200 to 24 900 computations (38.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 328.0ms
ival-mult: 97.0ms (29.6% of total)
ival-div: 63.0ms (19.2% of total)
ival-add: 59.0ms (18% of total)
ival-sub: 32.0ms (9.8% of total)
ival-sqrt: 20.0ms (6.1% of total)
ival-neg: 14.0ms (4.3% of total)
ival-if: 12.0ms (3.7% of total)
ival->=: 9.0ms (2.7% of total)
ival-fabs: 6.0ms (1.8% of total)
exact: 5.0ms (1.5% of total)
adjust: 4.0ms (1.2% of total)
ival-true: 4.0ms (1.2% of total)
ival-assert: 2.0ms (0.6% of total)
ival-exp: 1.0ms (0.3% of total)

regimes642.0ms (2.3%)

Memory
-9.5MiB live, 1 026.6MiB allocated; 90ms collecting garbage
Counts
593 → 118
Calls

26 calls:

171.0ms
b
60.0ms
c
54.0ms
a
46.0ms
(-.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64))
44.0ms
x
Compiler

Compiled 911 to 789 computations (13.4% saved)

analyze610.0ms (2.2%)

Memory
33.6MiB live, 724.0MiB allocated; 334ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
22.2%22.2%77.7%0.1%0%0%0%1
29.4%27.8%66.6%0.1%0%5.6%0%2
50%44.4%44.4%0.1%0%11.1%0%3
59.7%51.3%34.7%0.1%0%13.9%0%4
66.4%56.2%28.4%0.1%0%15.3%0%5
74%62.1%21.8%0.1%0%16%0%6
77.6%63.8%18.4%0.1%0%17.7%0%7
79.3%65%17%0.1%0%17.9%0%8
85%69.2%12.2%0.1%0%18.5%0%9
86.8%69.7%10.6%0.1%0%19.6%0%10
88.7%71.1%9.1%0.1%0%19.8%0%11
91.6%72.9%6.7%0.1%0%20.3%0%12
Compiler

Compiled 153 to 106 computations (30.7% saved)

simplify470.0ms (1.7%)

Memory
46.5MiB live, 322.9MiB allocated; 28ms collecting garbage
Stop Event
node limit

start0.0ms (0%)

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

end0.0ms (0%)

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

Profiling

Loading profile data...