Herbie run

Date:Thursday, November 21st, 2024
Commit:d1b0bfd6 on main
Hostname:nightly with Racket 8.10
Seed:2024326
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

Time bar (total: 6.3min)

sample1.8min (29%)

Memory
793.5MiB live, 90 355.5MiB allocated
Samples
1.0min438 943×0valid
10.5s22 346×1valid
4.0s8 402×2valid
2.4s4 423×0invalid
763.0ms8 011×0exit
254.0ms901×3valid
Precisions
Click to see histograms. Total time spent on operations: 59.1s
ival-mult: 25.5s (43.1% of total)
ival-add: 5.9s (10% of total)
const: 3.9s (6.5% of total)
ival-div: 3.7s (6.3% of total)
ival-exp: 2.6s (4.3% of total)
ival-hypot: 2.3s (3.9% of total)
ival-sub: 2.1s (3.6% of total)
ival-log: 2.1s (3.5% of total)
ival-asin: 1.5s (2.5% of total)
ival-sin: 1.3s (2.2% of total)
adjust: 1.2s (2% of total)
ival-cos: 985.0ms (1.7% of total)
ival-sqrt: 851.0ms (1.4% of total)
ival-atan2: 742.0ms (1.3% of total)
ival->: 699.0ms (1.2% of total)
ival-atanh: 396.0ms (0.7% of total)
ival-acosh: 379.0ms (0.6% of total)
exact: 370.0ms (0.6% of total)
ival-sinu: 332.0ms (0.6% of total)
ival-pi: 331.0ms (0.6% of total)
ival-pow: 323.0ms (0.5% of total)
ival->=: 294.0ms (0.5% of total)
ival-true: 278.0ms (0.5% of total)
ival-<=: 212.0ms (0.4% of total)
ival-asinh: 205.0ms (0.3% of total)
ival-assert: 200.0ms (0.3% of total)
ival-neg: 178.0ms (0.3% of total)
ival-fabs: 178.0ms (0.3% of total)
ival-cosu: 85.0ms (0.1% of total)
ival-and: 81.0ms (0.1% of total)
Bogosity

simplify1.0min (16.1%)

Memory
891.6MiB live, 56 712.5MiB allocated
Algorithm
461×egg-herbie
Stop Event
609×iter limit
341×node limit
118×saturated
unsound
Counts
14 898 → 14 737

soundness57.5s (15.1%)

Memory
-76.4MiB live, 30 022.4MiB allocated
Stop Event
349×iter limit
224×node limit
34×fuel
23×done
saturated
unsound
Compiler

Compiled 62 638 to 23 190 computations (63% saved)

rewrite37.8s (9.9%)

Memory
545.5MiB live, 37 640.9MiB allocated
Stop Event
442×iter limit
191×node limit
unsound
saturated
Counts
2 704 → 86 468

localize28.3s (7.5%)

Memory
-633.8MiB live, 31 230.5MiB allocated
Samples
12.2s42 220×0valid
4.7s4 543×1valid
2.6s1 598×2valid
1.4s2 618×0invalid
315.0ms602×0exit
102.0ms113×3valid
11.0ms12×4valid
7.0ms5exit
Compiler

Compiled 66 636 to 6 011 computations (91% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.5s
ival-mult: 4.8s (31.2% of total)
ival-add: 1.8s (11.6% of total)
ival-div: 1.6s (10.3% of total)
const: 1.1s (7% of total)
adjust: 984.0ms (6.4% of total)
ival-log: 764.0ms (4.9% of total)
ival-sub: 644.0ms (4.2% of total)
ival-pow: 589.0ms (3.8% of total)
ival-hypot: 501.0ms (3.2% of total)
ival-exp: 497.0ms (3.2% of total)
ival-cos: 388.0ms (2.5% of total)
ival-sin: 331.0ms (2.1% of total)
ival-asin: 279.0ms (1.8% of total)
ival-sqrt: 265.0ms (1.7% of total)
ival-neg: 227.0ms (1.5% of total)
ival-log1p: 82.0ms (0.5% of total)
exact: 76.0ms (0.5% of total)
ival-acos: 73.0ms (0.5% of total)
ival-copysign: 67.0ms (0.4% of total)
ival-atan2: 61.0ms (0.4% of total)
ival-pow2: 55.0ms (0.4% of total)
ival-fabs: 51.0ms (0.3% of total)
ival-pi: 48.0ms (0.3% of total)
ival-true: 44.0ms (0.3% of total)
ival-cosh: 32.0ms (0.2% of total)
ival-assert: 31.0ms (0.2% of total)
ival-sinu: 30.0ms (0.2% of total)
ival-cbrt: 16.0ms (0.1% of total)
ival-sinh: 11.0ms (0.1% of total)
ival-cosu: 8.0ms (0.1% of total)
ival-asinh: 7.0ms (0% of total)
ival-acosh: 6.0ms (0% of total)

eval22.7s (6%)

Memory
-274.7MiB live, 26 920.7MiB allocated
Compiler

Compiled 5 676 978 to 429 535 computations (92.4% saved)

explain13.9s (3.7%)

Memory
-332.2MiB live, 16 473.3MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64#foflow-rescue11130
-.f64#fcancellation7675
/.f64#fo/o6580
sqrt.f32#foflow-rescue1980
sin.f64#fsensitivity1910
cos.f64(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))sensitivity1900
/.f64#fo/n1880
+.f64#fcancellation1710
sqrt.f64#fuflow-rescue1420
log.f64(log.f64 (+.f64 (fabs.f64 x) (sqrt.f64 (+.f64 (*.f64 x x) #s(literal 1 binary64)))))sensitivity1330
log.f32(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32)))))sensitivity1082
/.f64#fn/o960
-.f64#fnan-rescue940
*.f64#fn*u650
/.f64#fu/u620
+.f64#fnan-rescue580
/.f64#fu/n410
*.f64#fn*o360
/.f64#fn/u190
log.f32#foflow-rescue30
cos.f64(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))oflow-rescue10
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))overflow1
(*.f64 x.re x.re)overflow65
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))overflow101
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im)overflow1
(*.f64 x.im x.im)overflow56
exp.f64(exp.f64 (neg.f64 (*.f64 (fabs.f64 x) (fabs.f64 x))))sensitivity10
sin.f64(sin.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))oflow-rescue10
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))overflow1
(*.f64 x.re x.re)overflow65
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))overflow101
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im)overflow1
(*.f64 x.im x.im)overflow56
*.f64(*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) #s(literal 2 binary64))) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64)))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)))))o*u10
(*.f64 (sqrt.f64 (*.f64 (PI.f64) #s(literal 2 binary64))) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64))))overflow1
(pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64)) (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 1/2 binary64)))overflow1
(exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 #s(literal 1 binary64) z) #s(literal 1 binary64)) #s(literal 7 binary64)) #s(literal 1/2 binary64))))underflow1
Confusion
Predicted +Predicted -
+355871
-22110742
Precision
0.9415189203492987
Recall
0.9804353816478368
Confusion?
Predicted +Predicted MaybePredicted -
+3558368
-221510737
Precision?
0.9403221547398997
Recall?
0.981262055662717
Freqs
test
numberfreq
010813
13223
2554
32
Total Confusion?
Predicted +Predicted MaybePredicted -
+3601
-1019
Precision?
0.972972972972973
Recall?
0.972972972972973
Samples
3.1s25 826×0valid
1.1s2 460×1valid
665.0ms842×2valid
19.0ms54×3valid
1.0ms5exit
Compiler

Compiled 13 558 to 2 283 computations (83.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.4s
ival-mult: 846.0ms (25.2% of total)
ival-add: 372.0ms (11.1% of total)
ival-div: 331.0ms (9.9% of total)
ival-log: 319.0ms (9.5% of total)
adjust: 264.0ms (7.9% of total)
const: 226.0ms (6.7% of total)
ival-hypot: 198.0ms (5.9% of total)
ival-exp: 164.0ms (4.9% of total)
ival-sub: 126.0ms (3.8% of total)
ival-sqrt: 95.0ms (2.8% of total)
ival-asin: 75.0ms (2.2% of total)
ival-cos: 68.0ms (2% of total)
ival-sin: 63.0ms (1.9% of total)
ival-atan2: 54.0ms (1.6% of total)
ival-true: 27.0ms (0.8% of total)
ival-pow: 21.0ms (0.6% of total)
exact: 21.0ms (0.6% of total)
ival-fabs: 19.0ms (0.6% of total)
ival-pi: 16.0ms (0.5% of total)
ival-assert: 13.0ms (0.4% of total)
ival-neg: 12.0ms (0.4% of total)
ival-copysign: 12.0ms (0.4% of total)
ival-log1p: 7.0ms (0.2% of total)
ival-cosu: 6.0ms (0.2% of total)
ival-sinu: 6.0ms (0.2% of total)

regimes12.4s (3.3%)

Memory
-348.8MiB live, 13 934.0MiB allocated
Counts
6 790 → 792
Calls

132 calls:

789.0ms
y.re
617.0ms
im
575.0ms
(-.f64 a (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
561.0ms
re
494.0ms
(*.f64 im im)
Compiler

Compiled 13 310 to 9 316 computations (30% saved)

preprocess11.7s (3.1%)

Memory
276.0MiB live, 12 039.1MiB allocated
Algorithm
57×egg-herbie
Stop Event
114×iter limit
60×saturated
54×node limit
Compiler

Compiled 73 220 to 14 365 computations (80.4% saved)

series9.4s (2.5%)

Memory
137.1MiB live, 11 059.2MiB allocated
Counts
2 704 → 14 898
Calls

1266 calls:

TimeVariablePointExpression
266.0ms
alpha
@0
((/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1)) (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i)) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1) (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* i (+ (+ alpha beta) i)))
142.0ms
x
@-inf
((* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (* (* (* (* x x) (* x x)) (fabs x)) (fabs x)) (* (* x x) (* x x)) (* (/ 1 (sqrt (PI))) (+ (+ (* (+ (* (* x x) 2/3) 2) x) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (* x x) (* x x)) (fabs x)) (fabs x)) (fabs x))))) (* (/ 1 (sqrt (PI))) (+ (* (pow x 5) 1/5) (+ (* x (+ (* 2/3 (* x x)) 2)) (* (pow x 7) 1/21)))) (* (/ 2 (sqrt (PI))) x) (/ 2 (sqrt (PI))) (sqrt (PI)) (fabs (* (/ 1 (sqrt (PI))) (+ (* (pow x 5) 1/5) (+ (* x (+ (* 2/3 (* x x)) 2)) (* (pow x 7) 1/21))))) (* (/ 1 (sqrt (PI))) (+ (* (pow x 5) 1/5) (+ (* x (+ (* 2/3 (* x x)) 2)) (* (pow x 7) 1/21)))) (* (* (+ (* (* x x) 2/3) 2) x) (sqrt (/ 1 (PI)))) (* (+ (* (* x x) 2/3) 2) x) (* (* (pow x 7) 1/21) 1) (fabs (* (/ 1 (sqrt (PI))) (+ (* (pow x 5) 1/5) (+ (* x (+ (* 2/3 (* x x)) 2)) (* (pow x 7) 1/21))))) (* (/ 1 (sqrt (PI))) (+ (* (pow x 5) 1/5) (+ (* x (+ (* 2/3 (* x x)) 2)) (* (pow x 7) 1/21)))) (/ (* (* (pow x 7) 1/21) 1) (sqrt (PI))) (* (* (* (neg x) x) x) (* (* (neg x) x) x)) (* (/ 1 (sqrt (PI))) (+ (+ (+ (* 2 (fabs x)) (* (* x x) (* x 2/3))) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (neg x) x) x) (* (* (neg x) x) x)) (fabs x))))) (+ (+ (+ (* 2 (fabs x)) (* (* x x) (* x 2/3))) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (neg x) x) x) (* (* (neg x) x) x)) (fabs x)))) (* (* (fabs x) (fabs x)) (fabs x)) (PI) (+ (* (* x x) 2/3) 2) (* (pow x 7) 1/21) (* x 2/3) (* (* x x) (* x 2/3)))
124.0ms
base
@0
((/ (log base) (pow (log base) 2)) (* (log (sqrt (+ (* im im) (* re re)))) (/ (log base) (pow (log base) 2))) (log (sqrt (+ (* im im) (* re re)))) (sqrt (+ (* im im) (* re re))) (/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (/ (* (log (+ (* im im) (* re re))) 1/2) (log base)) (* (log (* im im)) (/ 1/2 (log base))) (log (* im im)) (/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (log (pow (+ (* re re) (* im im)) (/ 1/2 (log base)))) (pow (+ (* re re) (* im im)) (/ 1/2 (log base))) (+ (* re re) (* im im)) (* (log (sqrt (+ (* im im) (* re re)))) (pow (sqrt (log base)) -2)) (pow (sqrt (log base)) -2) (* (log (sqrt (+ (* im im) (* re re)))) (exp (neg (log (log base))))) (exp (neg (log (log base)))) (pow (log base) 2) (log base) (/ 1/2 (log base)) (sqrt (log base)) (log (log base)))
104.0ms
x
@-inf
((log (* (log x) x)) (* (log x) x) (log x) (log (/ x (log x))) (/ x (log x)))
94.0ms
u1
@-inf
((/ 1 6) (+ (* (* (/ 1 6) (pow (* -2 (log u1)) 1/2)) (cos (* (* 2 (PI)) u2))) 1/2) (pow (* -2 (log u1)) 1/2) (* (* (/ 1 6) (pow (* -2 (log u1)) 1/2)) (cos (* (* 2 (PI)) u2))) (* (/ 1 6) (pow (* -2 (log u1)) 1/2)) (* (* 2 (PI)) u2))

prune7.8s (2.1%)

Memory
-247.1MiB live, 10 730.0MiB allocated
Counts
106 562 → 2 616
Compiler

Compiled 249 729 to 104 999 computations (58% saved)

bsearch4.1s (1.1%)

Memory
-77.6MiB live, 3 623.8MiB allocated
Algorithm
213×left-value
183×binary-search
Stop Event
175×narrow-enough
predicate-same
Samples
1.6s12 450×0valid
812.0ms1 301×1valid
18.0ms78×2valid
7.0ms27×3valid
Compiler

Compiled 127 672 to 68 649 computations (46.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.9s
ival-mult: 707.0ms (37.6% of total)
ival-hypot: 258.0ms (13.7% of total)
ival-add: 180.0ms (9.6% of total)
ival-log: 117.0ms (6.2% of total)
const: 101.0ms (5.4% of total)
adjust: 100.0ms (5.3% of total)
ival-sin: 100.0ms (5.3% of total)
ival-div: 68.0ms (3.6% of total)
ival-exp: 57.0ms (3% of total)
ival-sub: 55.0ms (2.9% of total)
ival-atan2: 53.0ms (2.8% of total)
ival-cos: 52.0ms (2.8% of total)
ival-sqrt: 14.0ms (0.7% of total)
ival-true: 10.0ms (0.5% of total)
ival-assert: 6.0ms (0.3% of total)
exact: 3.0ms (0.2% of total)

analyze3.0s (0.8%)

Memory
-4.4MiB live, 3 172.9MiB allocated
Algorithm
58×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%86.3%13.7%0%0%0%0
55.4%47.8%38.5%13.7%0%0%0%1
65.9%55.7%28.9%13.7%0%1.7%0%2
71.2%58.4%23.6%13.7%0%4.3%0%3
77.4%62%18.1%13.7%0%6.2%0%4
83.5%66.8%13.2%13.7%0%6.3%0%5
85.8%68.3%11.3%13.7%0%6.6%0%6
88.3%70.3%9.4%13.7%0%6.6%0%7
89.9%71.5%8%13.7%0%6.8%0%8
91.1%72.5%7.1%13.7%0%6.8%0%9
92.6%73.6%5.9%13.7%0%6.8%0%10
94%74.7%4.8%13.7%0%6.8%0%11
94.5%75.1%4.4%13.7%0%6.9%0%12
Compiler

Compiled 1 498 to 816 computations (45.5% saved)

start4.0ms (0%)

Memory
5.2MiB live, 5.0MiB allocated

end0.0ms (0%)

Memory
0.8MiB live, 0.7MiB allocated

Profiling

Loading profile data...