Herbie run

Date:Tuesday, March 25th, 2025
Commit:481a8102 on main
Seed:2025084
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:149 871.4 MB

Time bar (total: 2.6min)

sample1.6min (59.8%)

Memory
1 658.2MiB live, 87 127.5MiB allocated; 29.8s collecting garbage
Samples
24.9s44 570×2valid
16.2s145 295×0invalid
15.6s96 995×1valid
10.6s6 175×5exit
7.0s86 062×0valid
2.6s3 539×3valid
317.0ms4 206×0exit
156.0ms1 092×1exit
12.0ms4exit
2.0ms2exit
2.0ms4valid
2.0ms3exit
Precisions
Click to see histograms. Total time spent on operations: 1.0min
ival-tan: 11.9s (19.4% of total)
ival-pow: 10.7s (17.4% of total)
adjust: 6.6s (10.8% of total)
ival-mult!: 4.4s (7.2% of total)
ival-cos: 4.0s (6.5% of total)
ival-log: 3.4s (5.5% of total)
ival-sin: 3.3s (5.4% of total)
ival-div!: 3.0s (4.9% of total)
ival-fabs: 2.1s (3.4% of total)
ival-exp: 1.9s (3.1% of total)
ival-sub!: 1.9s (3% of total)
ival-expm1: 1.8s (2.9% of total)
ival-add!: 1.8s (2.9% of total)
ival-sqrt: 1.5s (2.4% of total)
ival-log1p: 1.0s (1.6% of total)
ival-<: 504.0ms (0.8% of total)
ival-<=: 364.0ms (0.6% of total)
ival-atan: 340.0ms (0.6% of total)
ival-and: 326.0ms (0.5% of total)
ival-cbrt: 297.0ms (0.5% of total)
ival-neg: 295.0ms (0.5% of total)
ival-fmin: 88.0ms (0.1% of total)
ival-assert: 70.0ms (0.1% of total)
ival->: 1.0ms (0% of total)
Bogosity

rewrite22.2s (14.1%)

Memory
-13.0MiB live, 19 625.8MiB allocated; 7.2s collecting garbage
Stop Event
254×iter limit
106×node limit
Counts
14 818 → 34 187

derivations7.3s (4.6%)

Memory
-199.1MiB live, 4 994.0MiB allocated; 2.1s collecting garbage
Stop Event
21×fuel
done
Compiler

Compiled 10 407 to 2 128 computations (79.6% saved)

preprocess7.2s (4.6%)

Memory
267.3MiB live, 6 998.0MiB allocated; 1.4s collecting garbage
Stop Event
56×iter limit
51×node limit
saturated
Compiler

Compiled 25 294 to 6 863 computations (72.9% saved)

explain5.8s (3.7%)

Memory
-57.2MiB live, 5 722.6MiB allocated; 2.0s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation414336
log.f64#fsensitivity7680
/.f64#fu/u4310
sqrt.f64#foflow-rescue4020
+.f64#fcancellation3560
/.f64#fu/n1170
pow.f64#fsensitivity612
sqrt.f64#fuflow-rescue200
/.f64(/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))))n/u190
(*.f64 b eps)underflow141
(-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64))underflow156
(-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))underflow141
(*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))underflow228
(*.f64 a eps)underflow156
-.f64#fnan-rescue190
exp.f64#fsensitivity30
/.f64(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x x))n/o20
(*.f64 x x)overflow61
Confusion
Predicted +Predicted -
+522623
-1241795
Precision
0.9768224299065421
Recall
0.9956182129929511
Confusion?
Predicted +Predicted MaybePredicted -
+5226167
-124191776
Precision?
0.9734447539461467
Recall?
0.9986664126500285
Freqs
test
numberfreq
01818
14553
2650
3100
447
Total Confusion?
Predicted +Predicted MaybePredicted -
+2800
-000
Precision?
1.0
Recall?
1.0
Samples
2.0s2 820×2valid
1.1s5 982×1valid
411.0ms5 346×0valid
209.0ms188×3valid
Compiler

Compiled 2 154 to 763 computations (64.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.1s
adjust: 876.0ms (28.6% of total)
ival-tan: 636.0ms (20.7% of total)
ival-pow: 268.0ms (8.7% of total)
ival-cos: 208.0ms (6.8% of total)
ival-log: 191.0ms (6.2% of total)
ival-sin: 151.0ms (4.9% of total)
ival-div!: 132.0ms (4.3% of total)
ival-exp: 131.0ms (4.3% of total)
ival-mult!: 111.0ms (3.6% of total)
ival-sub!: 76.0ms (2.5% of total)
ival-sqrt: 70.0ms (2.3% of total)
ival-expm1: 61.0ms (2% of total)
ival-log1p: 55.0ms (1.8% of total)
ival-add!: 52.0ms (1.7% of total)
ival-atan: 21.0ms (0.7% of total)
ival-cbrt: 16.0ms (0.5% of total)
ival-neg: 12.0ms (0.4% of total)

eval5.8s (3.6%)

Memory
38.1MiB live, 8 029.1MiB allocated; 1.5s collecting garbage
Compiler

Compiled 1 479 379 to 169 875 computations (88.5% saved)

series4.5s (2.9%)

Memory
80.0MiB live, 4 754.5MiB allocated; 1.7s collecting garbage
Counts
2 679 → 12 139
Calls

498 calls:

TimeVariablePointExpression
86.0ms
N
@0
((- (log (+ N 1)) (log N)) (log (+ N 1)) (+ N 1) N 1 (log N))
84.0ms
c
@inf
((/ (- (* (neg b_2) a) (* a (sqrt (+ (* b_2 b_2) (* c (neg a)))))) (* a a)) (- (* (neg b_2) a) (* a (sqrt (+ (* b_2 b_2) (* c (neg a)))))) (* (neg b_2) a) (neg b_2) b_2 a (* a (sqrt (+ (* b_2 b_2) (* c (neg a))))) (sqrt (+ (* b_2 b_2) (* c (neg a)))) (+ (* b_2 b_2) (* c (neg a))) (* c (neg a)) c (neg a) (* a a) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (* (/ b_2 a) -2) (/ b_2 a) -2 (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (neg (sqrt (* (neg a) c))) (sqrt (* (neg a) c)) (* (neg a) c) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (+ (* (/ b_2 a) -1) (sqrt (/ (neg c) a))) -1 (sqrt (/ (neg c) a)) (/ (neg c) a) (neg c) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (* (neg c) (- (/ b_2 c) (sqrt (* (/ a c) -1)))) (- (/ b_2 c) (sqrt (* (/ a c) -1))) (/ (sqrt (neg a)) (sqrt c)) (sqrt (neg a)) (sqrt c))
62.0ms
x
@-inf
((- (cbrt (+ x 1)) (cbrt x)) (cbrt (+ x 1)) (+ x 1) x 1 (cbrt x))
58.0ms
n
@-inf
((- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (neg (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n)) (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n) (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) (/ (+ (* -1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) (* n (+ (log x) (* -1 (log (+ 1 x)))))) n) (+ (* -1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) (* n (+ (log x) (* -1 (log (+ 1 x)))))) -1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2)) (pow (log (+ 1 x)) 2) (log (+ 1 x)) x 2 (pow (log x) 2) (log x) (* n (+ (log x) (* -1 (log (+ 1 x))))) n (+ (log x) (* -1 (log (+ 1 x)))) (* -1 (log (+ 1 x))) -1 (- (pow (+ x 1) (/ 1 n)) (pow x (pow n -1))) (pow (+ x 1) (/ 1 n)) 1 (pow x (pow n -1)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (pow (+ x 1) (/ 1 n)) (+ x 1) (/ 1 n) (pow x (/ 1 n)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (/ (- (+ (/ 1/3 (* n (* x x))) (pow n -1)) (/ 1/2 (* n x))) x) (- (+ (/ 1/3 (* n (* x x))) (pow n -1)) (/ 1/2 (* n x))) (+ (/ 1/3 (* n (* x x))) (pow n -1)) (/ 1/3 (* n (* x x))) 1/3 (* n (* x x)) (* x x) (pow n -1) (/ 1/2 (* n x)) 1/2 (* n x) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (neg (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n)) (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n) (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) (+ (log x) (* 1/2 (/ (pow (log x) 2) n))) (* 1/2 (/ (pow (log x) 2) n)) (/ (pow (log x) 2) n))
56.0ms
n
@0
((- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (neg (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n)) (/ (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) n) (+ (* -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n))) (log x)) -1 (+ (log (+ 1 x)) (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n)) (log (+ 1 x)) x (/ (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) n) (* 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2))) 1/2 (- (pow (log (+ 1 x)) 2) (pow (log x) 2)) (pow (log (+ 1 x)) 2) 2 (pow (log x) 2) (log x) n (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (pow (+ x 1) (/ 1 n)) 1 (pow x (/ 1 n)) (/ 1 n) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (- (log (+ 1 x)) (log x)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (pow (+ x 1) (/ 1 n)) (exp (/ (log (+ 1 x)) n)) (/ (log (+ 1 x)) n) (/ (- (pow (pow (+ 1 x) (pow n -1)) 2) (pow (pow x (pow n -1)) 2)) (+ (pow (+ 1 x) (pow n -1)) (pow x (pow n -1)))) (- (pow (pow (+ 1 x) (pow n -1)) 2) (pow (pow x (pow n -1)) 2)) (pow (pow (+ 1 x) (pow n -1)) 2) (pow (+ 1 x) (pow n -1)) (+ 1 x) (pow n -1) (pow (pow x (pow n -1)) 2) (pow x (pow n -1)) (+ (pow (+ 1 x) (pow n -1)) (pow x (pow n -1))))

regimes3.5s (2.2%)

Memory
50.2MiB live, 4 349.1MiB allocated; 646ms collecting garbage
Counts
3 804 → 350
Calls

43 calls:

1.1s
x
391.0ms
eps
161.0ms
(-.f64 (tan.f64 (+.f64 x eps)) (tan.f64 x))
125.0ms
b
104.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 2 310 to 2 219 computations (3.9% saved)

prune2.5s (1.6%)

Memory
-86.5MiB live, 4 010.5MiB allocated; 605ms collecting garbage
Counts
40 446 → 1 514
Compiler

Compiled 94 753 to 48 469 computations (48.8% saved)

analyze1.8s (1.1%)

Memory
-157.3MiB live, 1 531.1MiB allocated; 571ms collecting garbage
Algorithm
28×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%61.1%38.9%0%0%0%0
7.4%4.5%56.6%38.9%0%0%0%1
22.3%13.6%47.5%38.9%0%0%0%2
40.2%23.5%34.9%38.9%0%2.7%0%3
53.4%31.1%27.2%38.9%0%2.8%0%4
63%36.3%21.3%38.9%0%3.6%0%5
65.9%37.5%19.4%38.9%0%4.2%0%6
70.4%38.8%16.3%38.9%0%6%0%7
73.6%40.2%14.4%38.9%0%6.5%0%8
76.3%40.9%12.7%38.9%0%7.5%0%9
78.4%41.4%11.4%38.9%0%8.3%0%10
81.1%42.4%9.9%38.9%0%8.8%0%11
82.3%42.7%9.2%38.9%0%9.3%0%12
Compiler

Compiled 483 to 337 computations (30.2% saved)

simplify1.6s (1%)

Memory
-8.0MiB live, 1 298.2MiB allocated; 291ms collecting garbage
Stop Event
28×node limit

bsearch1.3s (0.8%)

Memory
-53.4MiB live, 1 428.4MiB allocated; 334ms collecting garbage
Algorithm
88×binary-search
26×left-value
Stop Event
82×narrow-enough
predicate-same
Samples
404.0ms4 585×0valid
120.0ms436×2valid
119.0ms1 108×1valid
96.0ms1 276×0invalid
3.0ms15×3valid
1.0ms13×0exit
Compiler

Compiled 28 972 to 21 986 computations (24.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 477.0ms
ival-mult!: 149.0ms (31.3% of total)
ival-pow: 54.0ms (11.3% of total)
ival-sub!: 54.0ms (11.3% of total)
ival-sqrt: 53.0ms (11.1% of total)
ival-div!: 46.0ms (9.7% of total)
ival-neg: 42.0ms (8.8% of total)
adjust: 39.0ms (8.2% of total)
ival-add!: 15.0ms (3.1% of total)
ival-cos: 15.0ms (3.1% of total)
ival-cbrt: 9.0ms (1.9% of total)
ival-expm1: 2.0ms (0.4% of total)

start1.0ms (0%)

Memory
2.4MiB live, 2.3MiB allocated; 0ms collecting garbage

end0.0ms (0%)

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

Profiling

Loading profile data...