Herbie run

Date:Tuesday, September 24th, 2024
Commit:6490ee3d on main
Hostname:nightly with Racket 8.10
Seed:2024268
Parameters:256 points for 4 iterations
Flags:
localize:costslocalize:errorsreduce:regimesreduce:avg-errorreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default

Time bar (total: 9.3min)

end1.5min (16.5%)

Memory
-8.4MiB live, 63 397.5MiB allocated

sample1.4min (15.3%)

Memory
484.9MiB live, 107 277.6MiB allocated
Samples
57.6s251 271×0valid
2.0s11 140×0invalid
1.8s4 665×1valid
436.0ms1 635×1exit
338.0ms694×1invalid
Precisions
Click to see histograms. Total time spent on operations: 50.2s
ival-mult: 9.8s (19.6% of total)
const: 7.8s (15.6% of total)
ival-<=: 6.9s (13.6% of total)
ival-div: 4.6s (9.2% of total)
ival-sub: 2.2s (4.4% of total)
ival-add: 2.1s (4.3% of total)
ival-sqrt: 1.7s (3.5% of total)
ival-log: 1.6s (3.3% of total)
ival-fabs: 1.3s (2.7% of total)
ival-and: 1.3s (2.5% of total)
ival-floor: 1.2s (2.3% of total)
ival-sin: 1.1s (2.2% of total)
ival-exp: 852.0ms (1.7% of total)
ival-pow: 846.0ms (1.7% of total)
ival-neg: 621.0ms (1.2% of total)
ival-e: 580.0ms (1.2% of total)
ival-sinu: 569.0ms (1.1% of total)
ival-pi: 556.0ms (1.1% of total)
ival-fmax: 493.0ms (1% of total)
exact: 460.0ms (0.9% of total)
ival-cosu: 449.0ms (0.9% of total)
ival-cos: 420.0ms (0.8% of total)
ival-if: 364.0ms (0.7% of total)
ival-tan: 326.0ms (0.6% of total)
adjust: 310.0ms (0.6% of total)
ival-<: 276.0ms (0.5% of total)
ival-asin: 199.0ms (0.4% of total)
ival-log2: 197.0ms (0.4% of total)
ival->: 189.0ms (0.4% of total)
ival-log1p: 182.0ms (0.4% of total)
ival-atan: 138.0ms (0.3% of total)
ival-assert: 114.0ms (0.2% of total)
ival-sinh: 110.0ms (0.2% of total)
ival-==: 106.0ms (0.2% of total)
ival->=: 71.0ms (0.1% of total)
ival-true: 10.0ms (0% of total)
Bogosity

eval1.3min (13.9%)

Memory
285.6MiB live, 118 505.9MiB allocated
Compiler

Compiled 41 748 587 to 645 130 computations (98.5% saved)

simplify56.1s (10.1%)

Memory
105.6MiB live, 59 159.3MiB allocated
Algorithm
277×egg-herbie
Stop Event
373×iter limit
206×node limit
67×saturated
unsound
Counts
63 864 → 63 644

regimes56.1s (10%)

Memory
523.0MiB live, 74 334.3MiB allocated
Counts
25 246 → 421
Calls

152 calls:

3.0s
s
1.9s
(+.f32 (/.f32 (*.f32 #s(literal 1/4 binary32) (exp.f32 (/.f32 (neg.f32 r) s))) (*.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) s) r)) (/.f32 (*.f32 #s(literal 3/4 binary32) (exp.f32 (/.f32 (neg.f32 r) (*.f32 #s(literal 3 binary32) s)))) (*.f32 (*.f32 (*.f32 #s(literal 6 binary32) (PI.f32)) s) r)))
1.7s
x
1.4s
cosTheta_i
1.4s
dX.u
Compiler

Compiled 26 704 to 17 664 computations (33.9% saved)

soundness43.8s (7.8%)

Memory
334.9MiB live, 28 966.3MiB allocated
Stop Event
278×iter limit
184×node limit
30×fuel
done
Compiler

Compiled 51 462 to 16 987 computations (67% saved)

prune32.1s (5.7%)

Memory
-412.1MiB live, 60 019.1MiB allocated
Counts
263 093 → 7 185
Compiler

Compiled 735 285 to 277 192 computations (62.3% saved)

rewrite28.0s (5%)

Memory
72.0MiB live, 34 863.9MiB allocated
Stop Event
261×iter limit
116×node limit
unsound
Counts
2 334 → 87 074

localize25.6s (4.6%)

Memory
156.7MiB live, 35 315.8MiB allocated
Samples
14.0s28 205×0valid
1.3s1 158×1valid
1.2s1 804×0invalid
338.0ms101×5exit
173.0ms174×0exit
28.0ms14×2valid
16.0ms32×1exit
Compiler

Compiled 137 143 to 5 978 computations (95.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0s
ival-mult: 4.1s (31.8% of total)
ival-div: 1.9s (14.6% of total)
ival-add: 1.1s (8.7% of total)
ival-pow2: 733.0ms (5.6% of total)
ival-exp: 633.0ms (4.9% of total)
ival-sub: 568.0ms (4.4% of total)
ival-pow: 494.0ms (3.8% of total)
ival-sqrt: 461.0ms (3.5% of total)
ival-neg: 344.0ms (2.6% of total)
ival-log: 337.0ms (2.6% of total)
ival-cos: 246.0ms (1.9% of total)
const: 213.0ms (1.6% of total)
ival-sin: 194.0ms (1.5% of total)
ival-tan: 158.0ms (1.2% of total)
adjust: 147.0ms (1.1% of total)
ival-sinu: 144.0ms (1.1% of total)
ival-log1p: 144.0ms (1.1% of total)
ival-fmax: 140.0ms (1.1% of total)
ival-if: 128.0ms (1% of total)
ival-floor: 103.0ms (0.8% of total)
ival-cosu: 103.0ms (0.8% of total)
ival-log2: 100.0ms (0.8% of total)
ival-pi: 65.0ms (0.5% of total)
ival-atan: 64.0ms (0.5% of total)
exact: 60.0ms (0.5% of total)
ival-expm1: 42.0ms (0.3% of total)
ival-fabs: 38.0ms (0.3% of total)
ival-e: 31.0ms (0.2% of total)
ival-true: 29.0ms (0.2% of total)
ival-asin: 25.0ms (0.2% of total)
ival-assert: 16.0ms (0.1% of total)
ival->: 14.0ms (0.1% of total)
ival-sinh: 14.0ms (0.1% of total)
ival-acos: 12.0ms (0.1% of total)
ival-tanu: 11.0ms (0.1% of total)
ival->=: 10.0ms (0.1% of total)
ival-cbrt: 8.0ms (0.1% of total)
ival-<: 6.0ms (0% of total)

analyze22.9s (4.1%)

Memory
342.6MiB live, 32 698.8MiB allocated
Algorithm
31×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%5.8%94.2%0%0%0%0
0%0%5.8%94.2%0%0%0%1
3.4%0.2%5.6%94.2%0%0%0%2
3.8%0.2%5.6%94.2%0%0%0%3
5.7%0.3%5.4%94.2%0%0%0%4
20.8%1.2%4.6%94.2%0%0%0%5
29.6%1.7%4%94.2%0%0.1%0%6
47.8%2.5%2.8%94.2%0%0.5%0%7
48.7%2.6%2.7%94.2%0%0.5%0%8
58.9%3.1%2.2%94.2%0%0.5%0%9
66.8%3.5%1.7%94.2%0%0.5%0%10
69.4%3.6%1.6%94.2%0%0.6%0%11
71.5%3.7%1.5%94.2%0%0.6%0%12
Compiler

Compiled 2 600 to 1 074 computations (58.7% saved)

series20.4s (3.6%)

Memory
394.1MiB live, 29 941.5MiB allocated
Counts
2 334 → 63 864
Calls

1281 calls:

TimeVariablePointExpression
196.0ms
s
@0
((- 4/3 (* 4/3 u)) (* (* -3 (log (- 4/3 (* 4/3 u)))) s) (* -3 (log (- 4/3 (* 4/3 u)))) (log (- 4/3 (* 4/3 u))) (* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* s (+ (* (+ (log 3/4) u) 3) (* (* u u) 3/2))) (* (* (* u s) u) 3/2) (* (* u s) u) (* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* (* (+ (log 3/4) u) 3) s) (* (+ (log 3/4) u) 3) (+ (log 3/4) u) (* (* -3 (log (+ 1 (+ (* -4/3 u) 1/3)))) s) (* -3 (log (+ 1 (+ (* -4/3 u) 1/3)))) (log (+ 1 (+ (* -4/3 u) 1/3))) (+ (* -4/3 u) 1/3) (* (* 3 s) (log (/ 1 (- 4/3 (* 4/3 u))))) (/ 1 (- 4/3 (* 4/3 u))) (* 3 s) (* 4/3 u) (log (/ 1 (- 4/3 (* 4/3 u)))))
141.0ms
s
@0
((+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s))))) (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (neg s) (/ (PI) s) (/ (neg (PI)) s) (exp (/ (neg (PI)) s)))
136.0ms
c
@0
((+ (* (exp x) (exp x)) (+ (exp x) 1)) (* (log (+ 1 (/ (* (- (exp (* x 3)) 1) y) (+ (* (exp x) (exp x)) (+ (exp x) 1))))) c) (log (+ 1 (/ (* (- (exp (* x 3)) 1) y) (+ (* (exp x) (exp x)) (+ (exp x) 1))))) (/ (* (- (exp (* x 3)) 1) y) (+ (* (exp x) (exp x)) (+ (exp x) 1))) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* c x) y) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (+ (* (* 1/6 x) (+ (* (* y y) (+ (* 2 y) -3)) y)) (* (- y (* y y)) 1/2)) x) y) x) (+ (* (+ (* (* 1/6 x) (+ (* (* y y) (+ (* 2 y) -3)) y)) (* (- y (* y y)) 1/2)) x) y) (* (+ (* (* (+ (* -1/2 y) 1/2) y) c) (* c (/ y x))) x) (+ (* (* (+ (* -1/2 y) 1/2) y) c) (* c (/ y x))) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* c (+ (* (* 1/2 x) (- y (* y y))) y)) x) (* (log (+ 1 (* y (- (exp x) 1)))) c) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* (- (exp (* x 3)) 1) y) (- (exp (* x 3)) 1) (+ (* (* 1/6 x) (+ (* (* y y) (+ (* 2 y) -3)) y)) (* (- y (* y y)) 1/2)) (* c (/ y x)))
133.0ms
d
@-inf
((pow (pow (fmax (+ (pow (* dX.w (floor d)) 2) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (pow (* dY.w (floor d)) 2) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2)))) 1/4) 2) (log2 (pow (pow (fmax (+ (pow (* dX.w (floor d)) 2) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (pow (* dY.w (floor d)) 2) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2)))) 1/4) 2)) (pow (fmax (+ (pow (* dX.w (floor d)) 2) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (pow (* dY.w (floor d)) 2) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2)))) 1/4) (fmax (+ (pow (* dX.w (floor d)) 2) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (pow (* dY.w (floor d)) 2) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2)))) (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)) (* (* (floor d) dY.w) (* (floor d) dY.w)) (* (* dX.u (pow (floor w) 2)) dX.u) (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)) (* (* (floor d) dX.w) (* (floor d) dX.w)) (+ (* 1 (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (pow (* dY.w (floor d)) 2)) (+ (* (floor h) (* (* dY.v (floor h)) dY.v)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.w (floor d)) 2))) (exp (log (* dX.v (floor h)))) (pow (* dX.u (floor w)) 2) (pow (* dY.u (floor w)) 2) (+ (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (* (* (floor d) dX.w) (* (floor d) dX.w))) (sqrt (fmax (+ (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (* (* (floor d) dX.w) (* (floor d) dX.w))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (* (* (floor d) dY.w) (* (floor d) dY.w))))) (sqrt (fmax (+ (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (* (* (floor d) dX.w) (* (floor d) dX.w))) (+ (* 1 (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (pow (* dY.w (floor d)) 2)))) (sqrt (fmax (+ (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (* (* (floor d) dX.w) (* (floor d) dX.w))) (+ (* (floor h) (* (* dY.v (floor h)) dY.v)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.w (floor d)) 2))))) (+ (* (exp (log (* dX.v (floor h)))) (exp (log (* dX.v (floor h))))) (+ (pow (* dX.u (floor w)) 2) (pow (* dX.w (floor d)) 2))) (sqrt (fmax (+ (* (exp (log (* dX.v (floor h)))) (exp (log (* dX.v (floor h))))) (+ (pow (* dX.u (floor w)) 2) (pow (* dX.w (floor d)) 2))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (* (* (floor d) dY.w) (* (floor d) dY.w))))))
119.0ms
s
@0
((log (/ 1 (+ (* -4/3 (- u 1/4)) 1))) (+ (* -4/3 (- u 1/4)) 1) (* (* 3 s) (log (/ 1 (+ (* -4/3 (- u 1/4)) 1)))) (* -4/3 (- u 1/4)) (* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* (* (log 3/4) s) 3) (* (log 3/4) s) (log 3/4) (* (* -3 (log (+ 1 (* -4/3 (- u 1/4))))) s) (* -3 (log (+ 1 (* -4/3 (- u 1/4))))) (log (+ 1 (* -4/3 (- u 1/4)))) (+ (* -1 (log (+ 1 (* -4/3 (- u 1/4))))) 0) (* (* 3 s) (+ (* -1 (log (+ 1 (* -4/3 (- u 1/4))))) 0)) (* 3 s) (+ (* (* s 3) 0) (* (* -3 (log (+ 1 (* -4/3 (- u 1/4))))) s)) (* s 3))

preprocess9.6s (1.7%)

Memory
-255.2MiB live, 10 049.2MiB allocated
Algorithm
31×egg-herbie
Stop Event
62×iter limit
33×saturated
29×node limit
Compiler

Compiled 61 124 to 17 663 computations (71.1% saved)

explain8.3s (1.5%)

Memory
-115.6MiB live, 12 883.2MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f32#fsensitivity100975
-.f32#fcancellation37037
sqrt.f32#foflow-rescue3700
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))sensitivity1920
cos.f32#fsensitivity18715
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation18013
/.f32#fo/n1300
exp.f32#fsensitivity4327
-.f64(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))cancellation420
/.f32#fu/n220
*.f64(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))n*u150
/.f32#fo/o120
sqrt.f32(sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))uflow-rescue110
(*.f32 sinTheta_O sinTheta_O)underflow288
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow11
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow144
(*.f32 eta eta)underflow11
/.f32(/.f32 (neg.f32 (log.f32 (-.f32 #s(literal 1 binary32) u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))n/o50
(/.f32 sin2phi (*.f32 alphay alphay))overflow12
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))overflow12
*.f32(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*u20
*.f32(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))u*o20
(*.f32 u normAngle)underflow4
(sin.f32 (*.f32 u normAngle))underflow4
(/.f32 #s(literal 1 binary32) (sin.f32 normAngle))overflow2
*.f32(*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*o20
sin.f32(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))cancellation12
Confusion
Predicted +Predicted -
+178466
-4565630
Precision
0.7964285714285714
Recall
0.9643243243243244
Confusion?
Predicted +Predicted MaybePredicted -
+17843432
-4561145516
Precision?
0.7613065326633166
Recall?
0.9827027027027027
Freqs
test
numberfreq
05696
11897
2331
312
Total Confusion?
Predicted +Predicted MaybePredicted -
+2110
-603
Precision?
0.7857142857142857
Recall?
1.0
Samples
2.5s15 428×0valid
159.0ms444×1valid
Compiler

Compiled 16 494 to 1 759 computations (89.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.9s
ival-mult: 534.0ms (28.9% of total)
ival-div: 246.0ms (13.3% of total)
ival-sub: 124.0ms (6.7% of total)
ival-exp: 120.0ms (6.5% of total)
ival-add: 108.0ms (5.8% of total)
ival-sqrt: 80.0ms (4.3% of total)
ival-sinu: 77.0ms (4.2% of total)
ival-log: 69.0ms (3.7% of total)
ival-sin: 62.0ms (3.4% of total)
ival-tan: 50.0ms (2.7% of total)
ival-floor: 45.0ms (2.4% of total)
ival-fmax: 39.0ms (2.1% of total)
ival-pow: 38.0ms (2.1% of total)
const: 28.0ms (1.5% of total)
ival-neg: 27.0ms (1.5% of total)
ival-cosu: 23.0ms (1.2% of total)
ival-pi: 22.0ms (1.2% of total)
ival-cos: 20.0ms (1.1% of total)
ival-e: 18.0ms (1% of total)
ival-true: 16.0ms (0.9% of total)
adjust: 15.0ms (0.8% of total)
ival-if: 15.0ms (0.8% of total)
exact: 14.0ms (0.8% of total)
ival-log2: 12.0ms (0.6% of total)
ival-fabs: 10.0ms (0.5% of total)
ival-assert: 8.0ms (0.4% of total)
ival-log1p: 8.0ms (0.4% of total)
ival-atan: 6.0ms (0.3% of total)
ival-asin: 5.0ms (0.3% of total)
ival-sinh: 5.0ms (0.3% of total)
ival->: 3.0ms (0.2% of total)
ival->=: 3.0ms (0.2% of total)
ival-<: 1.0ms (0.1% of total)

bsearch537.0ms (0.1%)

Memory
-77.5MiB live, 654.0MiB allocated
Algorithm
63×left-value
48×binary-search
Stop Event
48×narrow-enough
Samples
102.0ms407×1valid
16.0ms185×0valid
5.0ms21×0invalid
0.0ms1invalid
Compiler

Compiled 5 255 to 3 336 computations (36.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 98.0ms
ival-pow: 40.0ms (40.8% of total)
ival-e: 17.0ms (17.3% of total)
ival-mult: 16.0ms (16.3% of total)
ival-log1p: 11.0ms (11.2% of total)
adjust: 7.0ms (7.1% of total)
ival-sub: 6.0ms (6.1% of total)
ival-true: 1.0ms (1% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

start4.0ms (0%)

Memory
6.5MiB live, 10.6MiB allocated

Profiling

Loading profile data...