Herbie run

Date:Friday, January 17th, 2025
Commit:0ed7f8bc on no-localize
Seed:2025017
Parameters:256 points for 4 iterations
Flags:
reduce:regimesreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default
Memory:188 416.4 MB

Time bar (total: 3.4min)

sample2.1min (62.9%)

Memory
931.3MiB live, 120 107.5MiB allocated; 43.0s collecting garbage
Samples
30.7s43 744×2valid
23.1s147 250×0invalid
22.3s97 088×1valid
17.1s7 260×5exit
9.8s87 085×0valid
2.9s3 247×3valid
318.0ms4 309×0exit
5.0ms4valid
Precisions
Click to see histograms. Total time spent on operations: 1.5min
ival-pow: 16.5s (18.3% of total)
ival-tan: 13.1s (14.5% of total)
adjust: 9.2s (10.3% of total)
ival-mult: 7.3s (8.1% of total)
const: 5.5s (6.2% of total)
ival-div: 4.6s (5.2% of total)
ival-log: 4.1s (4.5% of total)
ival-sub: 3.9s (4.3% of total)
ival-cos: 3.8s (4.2% of total)
ival-add: 3.4s (3.8% of total)
ival-sin: 3.3s (3.6% of total)
ival-exp: 2.2s (2.5% of total)
ival-<=: 2.1s (2.4% of total)
ival-fabs: 2.1s (2.3% of total)
ival-expm1: 1.8s (2% of total)
ival-log1p: 1.3s (1.4% of total)
ival-sqrt: 1.1s (1.2% of total)
ival-fmin: 952.0ms (1.1% of total)
ival-<: 880.0ms (1% of total)
ival-and: 654.0ms (0.7% of total)
ival-neg: 541.0ms (0.6% of total)
ival->: 478.0ms (0.5% of total)
exact: 356.0ms (0.4% of total)
ival-atan: 355.0ms (0.4% of total)
ival-cbrt: 296.0ms (0.3% of total)
ival-assert: 158.0ms (0.2% of total)
ival-true: 72.0ms (0.1% of total)
Bogosity

simplify20.9s (10.4%)

Memory
65.4MiB live, 18 038.9MiB allocated; 3.5s collecting garbage
Stop Event
137×node limit
112×iter limit
Counts
9 956 → 9 790

rewrite10.9s (5.4%)

Memory
20.3MiB live, 9 103.6MiB allocated; 2.1s collecting garbage
Stop Event
336×iter limit
87×node limit
22×unsound
Counts
2 695 → 28 369

derivations8.5s (4.2%)

Memory
-16.9MiB live, 5 031.2MiB allocated; 1.8s collecting garbage
Stop Event
24×fuel
done
Compiler

Compiled 7 434 to 1 755 computations (76.4% saved)

eval7.8s (3.9%)

Memory
-100.1MiB live, 9 331.2MiB allocated; 2.4s collecting garbage
Compiler

Compiled 2 234 146 to 214 671 computations (90.4% saved)

preprocess7.2s (3.6%)

Memory
247.8MiB live, 5 901.3MiB allocated; 1.9s collecting garbage
Stop Event
56×iter limit
51×node limit
saturated
Compiler

Compiled 17 180 to 4 889 computations (71.5% saved)

explain5.2s (2.6%)

Memory
92.3MiB live, 5 895.0MiB allocated; 726ms collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation411222
log.f64#fsensitivity7620
sqrt.f64#foflow-rescue4680
/.f64#fu/u4520
+.f64#fcancellation3340
/.f64#fu/n1110
pow.f64(pow.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) n))sensitivity670
-.f64#fnan-rescue310
/.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/u220
(*.f64 b eps)underflow160
(-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64))underflow158
(-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))underflow160
(*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))underflow237
(*.f64 a eps)underflow158
sqrt.f64#fuflow-rescue200
/.f64(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x x))n/o60
(*.f64 x x)overflow49
sin.f64(sin.f64 (+.f64 x eps))sensitivity31
tan.f64(tan.f64 (+.f64 x eps))sensitivity31
cos.f64(cos.f64 (+.f64 x eps))sensitivity21
/.f64(/.f64 (-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64)) (-.f64 (exp.f64 x) #s(literal 1 binary64)))o/o20
(exp.f64 (*.f64 #s(literal 2 binary64) x))overflow2
(-.f64 (exp.f64 (*.f64 #s(literal 2 binary64) x)) #s(literal 1 binary64))overflow2
(exp.f64 x)overflow2
(-.f64 (exp.f64 x) #s(literal 1 binary64))overflow2
exp.f64(exp.f64 (*.f64 a x))sensitivity10
Confusion
Predicted +Predicted -
+525512
-1441757
Precision
0.9733283941470643
Recall
0.9977216631858743
Confusion?
Predicted +Predicted MaybePredicted -
+525593
-144141743
Precision?
0.9708594614533382
Recall?
0.9994304157964686
Freqs
test
numberfreq
01769
14589
2669
395
446
Total Confusion?
Predicted +Predicted MaybePredicted -
+2800
-000
Precision?
1.0
Recall?
1.0
Samples
1.4s2 778×2valid
1.1s6 100×1valid
418.0ms5 242×0valid
137.0ms216×3valid
Compiler

Compiled 2 154 to 763 computations (64.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.5s
ival-tan: 533.0ms (21.6% of total)
adjust: 384.0ms (15.6% of total)
ival-log: 210.0ms (8.5% of total)
ival-cos: 188.0ms (7.6% of total)
ival-div: 165.0ms (6.7% of total)
ival-exp: 152.0ms (6.2% of total)
ival-sub: 143.0ms (5.8% of total)
ival-sin: 128.0ms (5.2% of total)
ival-pow: 120.0ms (4.9% of total)
ival-add: 103.0ms (4.2% of total)
ival-mult: 100.0ms (4.1% of total)
ival-sqrt: 76.0ms (3.1% of total)
ival-log1p: 63.0ms (2.6% of total)
ival-expm1: 23.0ms (0.9% of total)
ival-atan: 22.0ms (0.9% of total)
ival-cbrt: 16.0ms (0.6% of total)
ival-true: 12.0ms (0.5% of total)
ival-neg: 11.0ms (0.4% of total)
exact: 9.0ms (0.4% of total)
ival-assert: 6.0ms (0.2% of total)

series4.5s (2.3%)

Memory
-246.8MiB live, 3 855.8MiB allocated; 1.7s collecting garbage
Counts
2 695 → 9 956
Calls

501 calls:

TimeVariablePointExpression
709.0ms
x
@inf
((- (cbrt (+ x 1)) (cbrt x)) (* (cbrt (/ (/ 1 x) x)) 1/3) (cbrt (/ (/ 1 x) x)) (/ (/ 1 x) x) (/ 1 x) 1 x 1/3 (- (cbrt (+ x 1)) (cbrt x)) (cbrt (+ x 1)) (cbrt x) (- (pow (- x -1) 1/3) (cbrt x)) (pow (- x -1) 1/3) (- x -1) -1 (- (cbrt (+ x 1)) (cbrt x)) (/ (+ (* (cbrt (pow x 4)) 1/3) (* -1/9 (cbrt x))) (* x x)) (+ (* (cbrt (pow x 4)) 1/3) (* -1/9 (cbrt x))) (cbrt (pow x 4)) (pow x 4) 4 (* -1/9 (cbrt x)) -1/9 (* x x) (- (cbrt (* (pow (cbrt (- x -1)) 2) (cbrt (- x -1)))) (cbrt x)) (cbrt (* (pow (cbrt (- x -1)) 2) (cbrt (- x -1)))) (* (pow (cbrt (- x -1)) 2) (cbrt (- x -1))) (pow (cbrt (- x -1)) 2) (cbrt (- x -1)) 2)
92.0ms
a
@inf
((/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ (/ (+ b a) b) a) (/ (+ b a) b) (+ b a) b a (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ 1 a) 1 (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ 1 b) (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (+ (* (- (* (/ 1/2 b) (/ (pow (+ b a) 2) a)) (/ (* (* (+ b a) 1/2) (+ (* (* a a) b) (* (* b b) a))) (* (* (* a a) b) b))) eps) (+ (/ 1 b) (/ 1 a))) (- (* (/ 1/2 b) (/ (pow (+ b a) 2) a)) (/ (* (* (+ b a) 1/2) (+ (* (* a a) b) (* (* b b) a))) (* (* (* a a) b) b))) (* (/ 1/2 b) (/ (pow (+ b a) 2) a)) (/ 1/2 b) 1/2 (/ (pow (+ b a) 2) a) (pow (+ b a) 2) 2 (/ (* (* (+ b a) 1/2) (+ (* (* a a) b) (* (* b b) a))) (* (* (* a a) b) b)) (* (* (+ b a) 1/2) (+ (* (* a a) b) (* (* b b) a))) (* (+ b a) 1/2) (+ (* (* a a) b) (* (* b b) a)) (* a a) (* (* b b) a) (* b b) (* (* (* a a) b) b) (* (* a a) b) eps (+ (/ 1 b) (/ 1 a)) (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ (+ (* (* eps (- (/ (pow (exp a) eps) (- (exp (* a eps)) 1)) 1/2)) b) 1) b) (+ (* (* eps (- (/ (pow (exp a) eps) (- (exp (* a eps)) 1)) 1/2)) b) 1) (* eps (- (/ (pow (exp a) eps) (- (exp (* a eps)) 1)) 1/2)) (- (/ (pow (exp a) eps) (- (exp (* a eps)) 1)) 1/2) (/ (pow (exp a) eps) (- (exp (* a eps)) 1)) (pow (exp a) eps) (exp a) (- (exp (* a eps)) 1) (* a eps))
78.0ms
c
@inf
((/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (* -2 b_2) -2 b_2 a (/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (* (/ c b_2) -1/2) (/ c b_2) c -1/2 (/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (* (+ (* (/ (/ c b_2) b_2) -1/2) (/ 2 a)) (neg b_2)) (+ (* (/ (/ c b_2) b_2) -1/2) (/ 2 a)) (/ (/ c b_2) b_2) (/ 2 a) 2 (neg b_2) (/ (- (* b_2 b_2) (+ (* (neg a) c) (* b_2 b_2))) (* (- (neg b_2) (sqrt (+ (* (neg a) c) (* b_2 b_2)))) a)) (- (* b_2 b_2) (+ (* (neg a) c) (* b_2 b_2))) (* b_2 b_2) (+ (* (neg a) c) (* b_2 b_2)) (neg a) (* (- (neg b_2) (sqrt (+ (* (neg a) c) (* b_2 b_2)))) a) (- (neg b_2) (sqrt (+ (* (neg a) c) (* b_2 b_2)))) (sqrt (+ (* (neg a) c) (* b_2 b_2))) (/ (/ (- (+ (* (neg a) c) (* b_2 b_2)) (* b_2 b_2)) (- (sqrt (+ (* (neg a) c) (* b_2 b_2))) (neg b_2))) a) (/ (- (+ (* (neg a) c) (* b_2 b_2)) (* b_2 b_2)) (- (sqrt (+ (* (neg a) c) (* b_2 b_2))) (neg b_2))) (- (+ (* (neg a) c) (* b_2 b_2)) (* b_2 b_2)) (- (sqrt (+ (* (neg a) c) (* b_2 b_2))) (neg b_2)))
59.0ms
n
@inf
((- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (log (/ (- x -1) x)) n) (log (/ (- x -1) x)) (/ (- x -1) x) (- x -1) x -1 n (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (/ 1 (* n x)) 1 (* n x) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (- (log (+ 1 x)) (log x)) (/ (/ (+ (- (/ (- 1/3 (/ 1/4 x)) x) 1/2) x) x) x) (/ (+ (- (/ (- 1/3 (/ 1/4 x)) x) 1/2) x) x) (+ (- (/ (- 1/3 (/ 1/4 x)) x) 1/2) x) (- (/ (- 1/3 (/ 1/4 x)) x) 1/2) (/ (- 1/3 (/ 1/4 x)) x) (- 1/3 (/ 1/4 x)) 1/3 (/ 1/4 x) 1/4 1/2 (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (* (log (+ 1 x)) n) (* n (log x))) (* n n)) (- (* (log (+ 1 x)) n) (* n (log x))) (* (neg n) (log x)) (neg n) (log x) (* n n) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (/ (* n (- (log (+ 1 x)) (log x))) n) n) (/ (* n (- (log (+ 1 x)) (log x))) n) (* n (- (log (+ 1 x)) (log x))) (- (log (+ 1 x)) (log x)) (log (+ 1 x)))
56.0ms
n
@0
((- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (exp (/ (log x) n)) (* n x)) (exp (/ (log x) n)) (/ (log x) n) (log x) x n (* n x) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (/ (/ 1 n) x) (/ 1 n) 1 (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (- (log (+ 1 x)) (log x)) (neg (/ (- (neg (/ (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) x)) 1) x)) (/ (- (neg (/ (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) x)) 1) x) (- (neg (/ (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) x)) 1) (neg (/ (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) x)) (/ (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) x) (- (neg (/ (- (/ 1/4 x) 1/3) x)) 1/2) (neg (/ (- (/ 1/4 x) 1/3) x)) (/ (- (/ 1/4 x) 1/3) x) (- (/ 1/4 x) 1/3) (/ 1/4 x) 1/4 1/3 1/2 (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (pow (+ x 1) (/ 1 n)) (+ (/ x n) 1) (/ x n) (pow x (/ 1 n)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (* (log (+ 1 x)) n) (* n (log x))) (* n n)) (- (* (log (+ 1 x)) n) (* n (log x))) (* (log (+ 1 x)) n) (log (+ 1 x)) (* n (log x)) (* n n))

regimes3.5s (1.7%)

Memory
109.2MiB live, 3 773.1MiB allocated; 1.4s collecting garbage
Counts
3 322 → 290
Calls

43 calls:

771.0ms
x
383.0ms
eps
287.0ms
(-.f64 (tan.f64 (+.f64 x eps)) (tan.f64 x))
111.0ms
(/.f64 #s(literal 1 binary64) n)
99.0ms
(-.f64 (sqrt.f64 (+.f64 x #s(literal 1 binary64))) (sqrt.f64 x))
Compiler

Compiled 2 135 to 2 003 computations (6.2% saved)

prune3.1s (1.5%)

Memory
3.4MiB live, 4 221.0MiB allocated; 1.2s collecting garbage
Counts
48 748 → 1 608
Compiler

Compiled 98 219 to 48 950 computations (50.2% saved)

analyze2.0s (1%)

Memory
213.1MiB live, 2 239.0MiB allocated; 655ms 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)

bsearch979.0ms (0.5%)

Memory
-19.7MiB live, 916.1MiB allocated; 128ms collecting garbage
Algorithm
54×binary-search
30×left-value
Stop Event
52×narrow-enough
predicate-same
Samples
315.0ms3 723×0valid
107.0ms373×2valid
103.0ms572×1valid
96.0ms823×0invalid
4.0ms44×0exit
1.0ms3valid
Compiler

Compiled 21 988 to 15 994 computations (27.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 407.0ms
ival-mult: 79.0ms (19.4% of total)
ival-pow: 77.0ms (18.9% of total)
ival-sqrt: 55.0ms (13.5% of total)
ival-div: 43.0ms (10.6% of total)
ival-sub: 41.0ms (10.1% of total)
adjust: 38.0ms (9.3% of total)
ival-neg: 22.0ms (5.4% of total)
ival-add: 19.0ms (4.7% of total)
ival-cos: 12.0ms (3% of total)
ival-cbrt: 4.0ms (1% of total)
ival-true: 4.0ms (1% of total)
ival-expm1: 3.0ms (0.7% of total)
ival-exp: 2.0ms (0.5% of total)
ival-assert: 2.0ms (0.5% of total)
exact: 2.0ms (0.5% of total)
ival-log1p: 1.0ms (0.2% of total)
ival-log: 1.0ms (0.2% of total)

start1.0ms (0%)

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

end0.0ms (0%)

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

Profiling

Loading profile data...