Herbie run

Date:Thursday, May 22nd, 2025
Commit:089dffb0 on main
Seed:2025142
Parameters:256 points for 4 iterations
Flags:
reduce:regimesreduce:binary-searchreduce:branch-expressionssetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:proofs
default
Memory:28 373.0 MB

Time bar (total: 23.6s)

sample9.2s (39.2%)

Memory
273.8MiB live, 10 460.9MiB allocated; 6.1s collecting garbage
Samples
5.8s70 174×0valid
586.0ms4 118×2valid
142.0ms1 991×0invalid
1.0ms12×1valid
Precisions
Click to see histograms. Total time spent on operations: 3.0s
ival-mult!: 771.0ms (25.8% of total)
ival-div!: 549.0ms (18.3% of total)
ival-sqrt: 377.0ms (12.6% of total)
ival-neg: 348.0ms (11.6% of total)
ival-sub!: 337.0ms (11.3% of total)
ival-exp: 144.0ms (4.8% of total)
adjust: 132.0ms (4.4% of total)
ival-fabs: 123.0ms (4.1% of total)
ival-add!: 105.0ms (3.5% of total)
ival-log: 100.0ms (3.3% of total)
ival-if: 4.0ms (0.1% of total)
ival->=: 3.0ms (0.1% of total)
Bogosity

rewrite6.1s (25.7%)

Memory
318.4MiB live, 6 652.3MiB allocated; 2.1s collecting garbage
Stop Event
78×iter-limit
29×node-limit
unsound
saturated
Counts
3 851 → 8 473

derivations1.7s (7.2%)

Memory
-93.1MiB live, 1 939.6MiB allocated; 333ms collecting garbage
Stop Event
done
fuel
Compiler

Compiled 7 149 to 646 computations (91% saved)

eval1.4s (5.8%)

Memory
-177.6MiB live, 2 040.0MiB allocated; 518ms collecting garbage
Compiler

Compiled 414 681 to 41 273 computations (90% saved)

preprocess1.3s (5.6%)

Memory
114.6MiB live, 1 606.5MiB allocated; 331ms collecting garbage
Stop Event
node-limit
Compiler

Compiled 8 460 to 1 448 computations (82.9% saved)

series1.0s (4.3%)

Memory
-180.5MiB live, 1 373.4MiB allocated; 336ms collecting garbage
Counts
774 → 3 077
Calls

186 calls:

TimeVariablePointExpression
53.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 x) -1)
44.0ms
a
@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) a) (neg b) a (/ (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (* 2 c) 2 c (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* (neg b) (+ (* (* a (/ c (* b b))) -2) 2)) (+ (* (* a (/ c (* b b))) -2) 2) (if (>= b 0) (/ (- (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)))) (* 2 a)) (* -1/2 (sqrt (* -4 (/ c a)))) -1/2 (sqrt (* -4 (/ c a))) (* -4 (/ c a)) -4 (/ c a) (if (>= b 0) (/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))))) (if (>= b 0) (* (/ (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) a) -1/2) (/ (+ c c) (- (sqrt (+ (* (* -4 a) c) (* b b))) b))) (* (/ (+ (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) (sqrt (+ (* (* -4 a) c) (* b b))) (+ (* (* -4 a) c) (* b b)) (* b b) (/ (+ c c) (- (sqrt (+ (* (* -4 a) c) (* b b))) b)) (/ (+ c c) (sqrt (* (* -4 a) c))) (+ c c) (sqrt (* (* -4 a) c)) (* (* -4 a) c) (* -4 a) (if (>= b 0) (/ (- (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)))) (* 2 a)) (/ (* 1/2 (* c (sqrt (* -4 (/ a c))))) a) (* 1/2 (* c (sqrt (* -4 (/ a c))))) 1/2 (* c (sqrt (* -4 (/ a c)))) (sqrt (* -4 (/ a c))) (* -4 (/ a c)) (/ a c) (if (>= b 0) (/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))))) (if (>= b 0) (* (/ (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) a) -1/2) (/ (+ c c) (- (sqrt (+ (* (* -4 a) c) (* b b))) b))) (* (/ (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) a) -1/2) (/ (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) a) (neg (/ (* c (sqrt (* -4 (/ a c)))) a)) (/ (* c (sqrt (* -4 (/ a c)))) a) (* c (sqrt (/ -4 (* a c)))) (sqrt (/ -4 (* a c))) (/ -4 (* a c)) (* a c) (/ (+ c c) (- (sqrt (+ (* (* -4 a) c) (* b b))) b)) (- (sqrt (+ (* (* -4 a) c) (* b b))) b) (sqrt (+ (* (* -4 a) c) (* b b))) (+ (* (* -4 a) c) (* b b)))
38.0ms
c
@inf
((if (>= b 0) (/ (* 2 c) (- (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2)))) (/ (+ (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2))) (* 2 a))) (>= b 0) b 0 (/ (* 2 c) (- (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2)))) (* 2 c) 2 c (- (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2))) (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2)) (* (log (+ (* (* -4 a) c) (* b b))) 1/2) (log (+ (* (* -4 a) c) (* b b))) (+ (* (* -4 a) c) (* b b)) (* -4 a) -4 a (* b b) 1/2 (/ (+ (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2))) (* 2 a)) (+ (neg b) (exp (* (log (+ (* (* -4 a) c) (* b b))) 1/2))) (* 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) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (* (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) 1/2)) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) (/ -1 (sqrt (* -4 (/ a c)))) -1 (sqrt (* -4 (/ a c))) (* -4 (/ a c)) (/ a c) -2 (* (/ (- (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) (sqrt (+ (* (* -4 a) c) (* b b))) (sqrt (* 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))) (if (>= b 0) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (* (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) 1/2)) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) (+ (sqrt (+ (* (* -4 a) c) (* b b))) b) (sqrt (+ (* (* -4 a) c) (* b b))) (+ (* (* -4 a) c) (* b b)) (* (/ (- (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) (* -2 (/ (* a c) b)) (/ (* a c) b) (* a c) (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) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (* (/ (- (sqrt (+ (* (* -4 a) c) (* b b))) b) a) 1/2)) (* (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) -2) (/ c (+ (sqrt (+ (* (* -4 a) c) (* b b))) b)) (/ -1 (sqrt (* -4 (/ a c)))) (sqrt (* -4 (/ a c))) (* a (sqrt (/ -4 (* a c)))) (sqrt (/ -4 (* a c))) (/ -4 (* a c)) (* (/ (- (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) (sqrt (+ (* (* -4 a) 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))) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (- (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 c)) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* (neg c) (+ (/ b c) (sqrt (* (/ a c) -4)))) (* -1 (+ b (* c (sqrt (* -4 (/ a c)))))) (+ b (* c (sqrt (* -4 (/ a c))))) (* c (sqrt (* -4 (/ a c)))))
32.0ms
a
@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)))))
31.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))

bsearch970.0ms (4.1%)

Memory
-2.8MiB live, 1 334.0MiB allocated; 163ms collecting garbage
Algorithm
62×binary-search
left-value
Stop Event
46×narrow-enough
16×predicate-same
Samples
375.0ms3 552×0valid
129.0ms817×0invalid
11.0ms96×2valid
Compiler

Compiled 70 684 to 39 147 computations (44.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 360.0ms
ival-mult!: 129.0ms (35.8% of total)
ival-div!: 76.0ms (21.1% of total)
ival-sub!: 41.0ms (11.4% of total)
ival-neg: 39.0ms (10.8% of total)
ival-sqrt: 31.0ms (8.6% of total)
ival-if: 14.0ms (3.9% of total)
ival->=: 10.0ms (2.8% of total)
ival-add!: 9.0ms (2.5% of total)
ival-exp: 5.0ms (1.4% of total)
adjust: 3.0ms (0.8% of total)
ival-fabs: 3.0ms (0.8% of total)

regimes959.0ms (4.1%)

Memory
-11.9MiB live, 1 547.4MiB allocated; 313ms collecting garbage
Counts
766 → 128
Calls

26 calls:

230.0ms
b
83.0ms
(if (>=.f64 b #s(literal 0 binary64)) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a)) (/.f64 (*.f64 #s(literal 2 binary64) c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))))
72.0ms
x
64.0ms
z
58.0ms
a
Compiler

Compiled 954 to 810 computations (15.1% saved)

analyze477.0ms (2%)

Memory
15.2MiB live, 506.3MiB allocated; 516ms 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)

prune467.0ms (2%)

Memory
180.4MiB live, 911.7MiB allocated; 86ms collecting garbage
Counts
7 838 → 296
Compiler

Compiled 28 752 to 12 869 computations (55.2% saved)

start0.0ms (0%)

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

end0.0ms (0%)

Memory
0.3MiB live, 0.2MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...