Herbie run

Date:Wednesday, January 15th, 2025
Commit:d270acbc on main
Seed:2025015
Parameters:256 points for 4 iterations
Flags:
localize:costslocalize:errorsreduce:regimesreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default
Memory:454 322.6 MB

Time bar (total: 8.2min)

sample6.0min (73.8%)

Memory
5 007.9MiB live, 330 345.3MiB allocated; 1.7min collecting garbage
Samples
3.4min36 404×0valid
2.0min7 075×5exit
2.8s484×1valid
2.4s321×2valid
4.0ms3valid
Precisions
Click to see histograms. Total time spent on operations: 2.8min
const: 37.2s (22% of total)
ival-fmax: 18.3s (10.8% of total)
ival-exp: 16.1s (9.5% of total)
ival-sub: 14.2s (8.4% of total)
ival-add: 12.8s (7.5% of total)
ival-mult: 12.0s (7.1% of total)
adjust: 11.8s (7% of total)
ival-log: 11.5s (6.8% of total)
ival-pow2: 11.3s (6.7% of total)
ival-fmin: 7.5s (4.4% of total)
ival-neg: 5.5s (3.2% of total)
ival-div: 4.4s (2.6% of total)
ival-sqrt: 4.3s (2.6% of total)
ival-sin: 1.0s (0.6% of total)
ival-cos: 798.0ms (0.5% of total)
ival-expm1: 257.0ms (0.2% of total)
exact: 239.0ms (0.1% of total)
ival-fabs: 234.0ms (0.1% of total)
ival-true: 37.0ms (0% of total)
ival-assert: 21.0ms (0% of total)
Bogosity

localize46.9s (9.6%)

Memory
950.6MiB live, 36 160.6MiB allocated; 8.4s collecting garbage
Samples
6.3s3 375×0valid
2.3s57×5exit
2.0s148×1valid
1.1s72×2valid
308.0ms36×3valid
233.0ms10×4valid
Compiler

Compiled 1 277 545 to 3 759 computations (99.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0s
ival-fmax: 1.2s (20.6% of total)
const: 1.0s (16.9% of total)
ival-sub: 749.0ms (12.5% of total)
adjust: 675.0ms (11.3% of total)
ival-add: 532.0ms (8.9% of total)
ival-fmin: 460.0ms (7.7% of total)
ival-pow2: 309.0ms (5.2% of total)
ival-sin: 269.0ms (4.5% of total)
ival-mult: 217.0ms (3.6% of total)
ival-neg: 187.0ms (3.1% of total)
ival-sqrt: 147.0ms (2.5% of total)
ival-cos: 101.0ms (1.7% of total)
ival-hypot: 37.0ms (0.6% of total)
ival-div: 23.0ms (0.4% of total)
exact: 17.0ms (0.3% of total)
ival-fabs: 5.0ms (0.1% of total)
ival-true: 4.0ms (0.1% of total)
ival-assert: 2.0ms (0% of total)

explain24.1s (4.9%)

Memory
-542.1MiB live, 24 607.6MiB allocated; 4.2s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64#foflow-rescue26650
sin.f64#fsensitivity3770
cos.f64#fsensitivity3761
cos.f64(cos.f64 (*.f64 y #s(literal 30 binary64)))oflow-rescue20
(*.f64 y #s(literal 30 binary64))overflow2
sin.f64(sin.f64 (*.f64 y #s(literal 30 binary64)))oflow-rescue20
(*.f64 y #s(literal 30 binary64))overflow2
-.f64(-.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 y #s(literal 11/40 binary64)) #s(literal 2 binary64)) (pow.f64 (-.f64 x #s(literal 11/40 binary64)) #s(literal 2 binary64)))) #s(literal 11/40 binary64))cancellation10
Confusion
Predicted +Predicted -
+1631
-289571
Precision
0.3606194690265487
Recall
0.9939024390243902
Confusion?
Predicted +Predicted MaybePredicted -
+16301
-2892569
Precision?
0.3590308370044053
Recall?
0.9939024390243902
Freqs
test
numberfreq
0572
11
2147
350
427
562
65
729
1632
1766
2133
Total Confusion?
Predicted +Predicted MaybePredicted -
+200
-101
Precision?
0.6666666666666666
Recall?
1.0
Samples
2.6s1 876×0valid
903.0ms84×1valid
662.0ms24×5exit
425.0ms38×2valid
181.0ms4valid
119.0ms18×3valid
Compiler

Compiled 163 835 to 2 695 computations (98.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.2s
ival-fmax: 729.0ms (22.8% of total)
const: 583.0ms (18.2% of total)
ival-sub: 434.0ms (13.6% of total)
adjust: 371.0ms (11.6% of total)
ival-add: 281.0ms (8.8% of total)
ival-fmin: 242.0ms (7.6% of total)
ival-pow2: 172.0ms (5.4% of total)
ival-neg: 110.0ms (3.4% of total)
ival-sin: 83.0ms (2.6% of total)
ival-sqrt: 79.0ms (2.5% of total)
ival-mult: 56.0ms (1.8% of total)
ival-cos: 39.0ms (1.2% of total)
exact: 9.0ms (0.3% of total)
ival-fabs: 7.0ms (0.2% of total)
ival-true: 2.0ms (0.1% of total)
ival-assert: 1.0ms (0% of total)

analyze20.8s (4.2%)

Memory
467.5MiB live, 23 999.5MiB allocated; 7.1s collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
83.3%83.2%16.6%0.1%0%0%0%1
83.3%83.2%16.6%0.1%0%0%0%2
83.3%83.2%16.6%0.1%0%0%0%3
83.3%83.2%16.6%0.1%0%0%0%4
83.3%83.2%16.6%0.1%0%0%0%5
83.3%83.2%16.6%0.1%0%0%0%6
83.9%83.8%16.1%0.1%0%0%0%7
83.9%83.8%16.1%0.1%0%0%0%8
84%83.9%16%0.1%0%0%0%9
84.2%84.1%15.7%0.1%0%0%0%10
84.4%84.3%15.6%0.1%0%0%0%11
84.5%84.4%15.4%0.1%0%0%0%12
Compiler

Compiled 47 433 to 9 150 computations (80.7% saved)

eval15.7s (3.2%)

Memory
222.3MiB live, 18 881.2MiB allocated; 3.4s collecting garbage
Compiler

Compiled 19 152 783 to 127 214 computations (99.3% saved)

simplify11.4s (2.3%)

Memory
138.6MiB live, 10 864.6MiB allocated; 3.5s collecting garbage
Stop Event
44×iter limit
32×node limit
Counts
1 499 → 1 491

rewrite2.5s (0.5%)

Memory
12.1MiB live, 2 510.0MiB allocated; 453ms collecting garbage
Stop Event
37×iter limit
14×node limit
Counts
182 → 2 106

prune2.2s (0.4%)

Memory
-2.3MiB live, 2 582.6MiB allocated; 269ms collecting garbage
Counts
9 402 → 131
Compiler

Compiled 278 945 to 82 504 computations (70.4% saved)

bsearch1.5s (0.3%)

Memory
-8.1MiB live, 1 371.4MiB allocated; 1.3s collecting garbage
Algorithm
36×binary-search
left-value
Stop Event
36×narrow-enough
Samples
1.1s2 640×0valid
45.0ms71×1valid
43.0ms25×2valid
Compiler

Compiled 39 546 to 24 153 computations (38.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-cos: 506.0ms (45.8% of total)
ival-sin: 143.0ms (13% of total)
ival-pow2: 87.0ms (7.9% of total)
const: 76.0ms (6.9% of total)
ival-mult: 72.0ms (6.5% of total)
ival-sub: 58.0ms (5.3% of total)
ival-fmax: 52.0ms (4.7% of total)
ival-add: 40.0ms (3.6% of total)
adjust: 17.0ms (1.5% of total)
ival-sqrt: 17.0ms (1.5% of total)
ival-fmin: 13.0ms (1.2% of total)
ival-neg: 9.0ms (0.8% of total)
ival-fabs: 8.0ms (0.7% of total)
exact: 3.0ms (0.3% of total)
ival-true: 2.0ms (0.2% of total)
ival-assert: 1.0ms (0.1% of total)

preprocess1.3s (0.3%)

Memory
45.0MiB live, 1 039.5MiB allocated; 186ms collecting garbage
Stop Event
iter limit
node limit
Compiler

Compiled 12 301 to 1 861 computations (84.9% saved)

derivations1.1s (0.2%)

Memory
-41.3MiB live, 815.8MiB allocated; 169ms collecting garbage
Stop Event
fuel
done
Compiler

Compiled 4 475 to 386 computations (91.4% saved)

regimes406.0ms (0.1%)

Memory
1.2MiB live, 613.7MiB allocated; 80ms collecting garbage
Counts
276 → 63
Calls

9 calls:

81.0ms
y
73.0ms
x
62.0ms
(*.f64 y #s(literal 30 binary64))
51.0ms
(*.f64 x #s(literal 30 binary64))
30.0ms
(*.f64 z #s(literal 30 binary64))
Compiler

Compiled 806 to 652 computations (19.1% saved)

start382.0ms (0.1%)

Memory
-7.8MiB live, 139.5MiB allocated; 726ms collecting garbage

series318.0ms (0.1%)

Memory
-8.8MiB live, 391.2MiB allocated; 88ms collecting garbage
Counts
182 → 1 499
Calls

105 calls:

TimeVariablePointExpression
13.0ms
x
@0
((sqrt (+ (pow (+ 41/10 (* y 10)) 2) (pow (- (* z 10) 33/10) 2))) (sqrt (+ (pow (+ 1 (* z 10)) 2) (pow (- (* x 10) 7/2) 2))) (sqrt (+ (pow (- (* y 10) 2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (pow (- (* y 10) 11/2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 28/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (+ 131/20 (* x 10)) 2) (pow (- (* z 10) 28/5) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 37/5) 2) (pow (+ 63/20 (* y 10)) 2)) (pow (+ 11/4 (* x 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (+ 131/20 (* x 10)) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (+ 131/20 (* x 10)) 2) (pow (- (* z 10) 28/5) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))))
11.0ms
x
@0
((sqrt (+ (pow (+ 41/10 (* y 10)) 2) (pow (- (* z 10) 33/10) 2))) (sqrt (+ (pow (+ 1 (* z 10)) 2) (pow (- (* x 10) 7/2) 2))) (sqrt (+ (pow (- (* y 10) 2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (pow (- (* y 10) 11/2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 28/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 37/5) 2) (pow (+ 63/20 (* y 10)) 2)) (pow (+ 11/4 (* x 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (+ 131/20 (* x 10)) 2) (pow (- (* z 10) 28/5) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (+ 131/20 (* x 10)) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 37/5) 2) (pow (+ 63/20 (* y 10)) 2)) (pow (+ 11/4 (* x 10)) 2))) (sqrt (+ (+ (pow (+ 131/20 (* x 10)) 2) (pow (- (* z 10) 28/5) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 28/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 28/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))))
10.0ms
x
@-inf
((sqrt (+ (pow (+ 41/10 (* y 10)) 2) (pow (- (* z 10) 33/10) 2))) (sqrt (+ (pow (+ 1 (* z 10)) 2) (pow (- (* x 10) 7/2) 2))) (sqrt (+ (pow (- (* y 10) 2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (pow (- (* y 10) 11/2) 2) (pow (+ 1 (* z 10)) 2))) (sqrt (+ (+ (pow (- (* z 5) 11/5) 2) (pow (- (* x 10) 97/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 28/5) 2) (pow (- (* x 10) 21/20) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (+ 131/20 (* x 10)) 2) (pow (- (* z 10) 28/5) 2)) (pow (+ 63/20 (* y 10)) 2))) (sqrt (+ (+ (pow (- (* z 10) 37/5) 2) (pow (+ 63/20 (* y 10)) 2)) (pow (+ 11/4 (* x 10)) 2))))
9.0ms
x
@-inf
((+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (fmax (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (* -30 x) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (* (- 30 (/ 25 x)) x) (- 30 (/ 25 x)) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2)) (sin (* y 30)) (cos (* y 30)) (cos (* x 30)) (sin (* x 30)) (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (cos (* -30 x)) (sin (* 30 x)) (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (sin (* 30 y)) (cos (* -30 y)))
9.0ms
x
@-inf
((+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (fmax (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (* (- 30 (/ 25 x)) x) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (* (- 30 (/ 25 x)) x) (- 30 (/ 25 x)) (fmax (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (+ (pow (* x 30) 2) (pow (* y 30) 2)) (pow (* z 30) 2))) 25) (* (- 30 (/ 25 y)) y) (- 30 (/ 25 y)) (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z)))) (fmax (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (- (fabs (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30))))) 1/5)) (- (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) 25) (sqrt (+ (* (* x x) 900) (* 900 (+ (* y y) (* z z))))) (sin (* y 30)) (cos (* y 30)) (cos (* x 30)) (sin (* x 30)) (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (cos (* -30 x)) (sin (* 30 x)) (+ (+ (* (sin (* x 30)) (cos (* y 30))) (* (sin (* y 30)) (cos (* z 30)))) (* (sin (* z 30)) (cos (* x 30)))) (sin (* 30 y)) (cos (* -30 z)))

end0.0ms (0%)

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

Profiling

Loading profile data...