Herbie run

Date:Saturday, September 28th, 2024
Commit:2cabb9a2 on fix-casts
Hostname:nightly with Racket 8.10
Seed:2024272
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: 1.1min)

sample13.0s (19.7%)

Memory
331.7MiB live, 11 245.8MiB allocated
Samples
7.0s70 139×0valid
865.0ms4 157×2valid
217.0ms1 843×0invalid
1.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 5.3s
ival-mult: 1.4s (27.1% of total)
ival-div: 1.2s (22.4% of total)
ival-sub: 747.0ms (14.1% of total)
ival-sqrt: 394.0ms (7.4% of total)
ival-exp: 249.0ms (4.7% of total)
ival-neg: 237.0ms (4.5% of total)
ival-fabs: 195.0ms (3.7% of total)
ival->=: 193.0ms (3.6% of total)
ival-add: 187.0ms (3.5% of total)
ival-if: 113.0ms (2.1% of total)
ival-log: 108.0ms (2% of total)
adjust: 104.0ms (2% of total)
ival-true: 60.0ms (1.1% of total)
exact: 58.0ms (1.1% of total)
ival-assert: 31.0ms (0.6% of total)
Bogosity

simplify10.7s (16.3%)

Memory
222.4MiB live, 10 144.3MiB allocated
Algorithm
73×egg-herbie
Stop Event
94×iter limit
40×node limit
35×saturated
Counts
9 168 → 9 016

eval10.4s (15.9%)

Memory
215.7MiB live, 13 143.8MiB allocated
Compiler

Compiled 1 504 689 to 107 105 computations (92.9% saved)

soundness8.1s (12.3%)

Memory
116.8MiB live, 4 225.8MiB allocated
Stop Event
53×iter limit
34×node limit
fuel
done
saturated
Compiler

Compiled 3 161 to 1 868 computations (40.9% saved)

rewrite7.2s (10.9%)

Memory
74.3MiB live, 7 092.5MiB allocated
Stop Event
70×iter limit
30×node limit
unsound
saturated
Counts
380 → 21 423

localize4.9s (7.5%)

Memory
-119.5MiB live, 5 703.3MiB allocated
Samples
1.6s6 356×0valid
921.0ms875×2valid
836.0ms733×1valid
122.0ms104×3valid
19.0ms124×0exit
Compiler

Compiled 7 511 to 784 computations (89.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.3s
ival-div: 571.0ms (24.6% of total)
ival-mult: 430.0ms (18.5% of total)
adjust: 231.0ms (10% of total)
ival-sqrt: 230.0ms (9.9% of total)
ival-add: 228.0ms (9.8% of total)
ival-sub: 224.0ms (9.7% of total)
ival-neg: 93.0ms (4% of total)
ival-if: 89.0ms (3.8% of total)
ival-log: 63.0ms (2.7% of total)
ival-pow: 60.0ms (2.6% of total)
ival-exp: 35.0ms (1.5% of total)
ival-fabs: 19.0ms (0.8% of total)
exact: 13.0ms (0.6% of total)
ival-pow2: 8.0ms (0.3% of total)
ival-true: 7.0ms (0.3% of total)
ival->=: 7.0ms (0.3% of total)
ival-e: 6.0ms (0.3% of total)
ival-assert: 4.0ms (0.2% of total)
ival-log1p: 2.0ms (0.1% of total)

prune3.2s (4.9%)

Memory
-147.7MiB live, 4 809.0MiB allocated
Counts
40 956 → 321
Compiler

Compiled 15 274 to 8 329 computations (45.5% saved)

explain2.2s (3.3%)

Memory
-81.9MiB live, 1 980.2MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64#foflow-rescue2590
-.f64#fcancellation1310
+.f64#fcancellation1280
sqrt.f64#fuflow-rescue670
/.f64#fn/u350
-.f64#fnan-rescue200
/.f64#fu/n180
*.f64(*.f64 (/.f64 x y) z)n*o70
*.f64(*.f64 (/.f64 x y) z)n*u50
/.f64(/.f64 (*.f64 #s(literal 2 binary64) c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))))n/o10
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))overflow1
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))overflow92
(*.f64 (*.f64 #s(literal 4 binary64) a) c)overflow21
(*.f64 b b)overflow79
Confusion
Predicted +Predicted -
+2919
-2511753
Precision
0.5369003690036901
Recall
0.97
Confusion?
Predicted +Predicted MaybePredicted -
+29109
-25101753
Precision?
0.5369003690036901
Recall?
0.97
Freqs
test
numberfreq
01762
1418
2119
35
Total Confusion?
Predicted +Predicted MaybePredicted -
+400
-005
Precision?
1.0
Recall?
1.0
Samples
312.0ms3 616×0valid
216.0ms598×2valid
104.0ms342×1valid
56.0ms52×3valid
Compiler

Compiled 1 107 to 300 computations (72.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 451.0ms
ival-sub: 95.0ms (21.1% of total)
ival-div: 85.0ms (18.9% of total)
ival-mult: 55.0ms (12.2% of total)
adjust: 52.0ms (11.5% of total)
ival-sqrt: 39.0ms (8.6% of total)
ival-neg: 36.0ms (8% of total)
ival-if: 30.0ms (6.7% of total)
ival-add: 29.0ms (6.4% of total)
ival-log: 7.0ms (1.6% of total)
ival-fabs: 6.0ms (1.3% of total)
ival-exp: 5.0ms (1.1% of total)
ival-true: 4.0ms (0.9% of total)
exact: 4.0ms (0.9% of total)
ival->=: 3.0ms (0.7% of total)
ival-assert: 2.0ms (0.4% of total)

preprocess2.1s (3.1%)

Memory
-20.9MiB live, 1 583.6MiB allocated
Algorithm
egg-herbie
Stop Event
18×iter limit
13×saturated
node limit
Compiler

Compiled 2 407 to 1 032 computations (57.1% saved)

series1.6s (2.5%)

Memory
-33.2MiB live, 1 708.4MiB allocated
Counts
380 → 9 168
Calls

183 calls:

TimeVariablePointExpression
281.0ms
x
@inf
((fabs (/ (+ (* z x) (- -4 x)) y)) (/ (+ (* z x) (- -4 x)) y) (+ (* z x) (- -4 x)) (- -4 x) (fabs (- (/ (+ x 4) y) (* (/ x y) z))) (- (/ (+ x 4) y) (* (/ x y) z)) (/ 4 y) (fabs (- (/ (+ x 4) y) (* (/ x y) z))) (- (/ (+ x 4) y) (* (/ x y) z)) (* (neg z) (/ x y)) (neg z) (/ 1 (/ y (- (+ 4 x) (* z x)))) (- (+ 4 x) (* z x)) (fabs (/ 1 (/ y (- (+ 4 x) (* z x))))) (/ y (- (+ 4 x) (* z x))) (+ (* x (* (/ -1 y) z)) (/ (+ 4 x) y)) (* (/ -1 y) z) (fabs (+ (* x (* (/ -1 y) z)) (/ (+ 4 x) y))) (/ -1 y) (* z x) (+ 4 x))
123.0ms
a
@inf
((/ (- (neg b) (sqrt (+ (* (* c a) -4) (* b b)))) (* 2 a)) (if (>= b 0) (/ (- (neg b) (sqrt (+ (* (* c a) -4) (* b b)))) (* 2 a)) (/ (* 2 c) (- (sqrt (+ (* (* -4 c) a) (* b b))) b))) (>= b 0) (- (neg b) (sqrt (+ (* (* c a) -4) (* b b)))) (* (/ 1/2 a) (neg (+ (sqrt (+ (* (* -4 c) a) (* b b))) b))) (* (neg c) (/ -2 (- (sqrt (+ (* (* -4 c) a) (* b b))) b))) (/ 1/2 a) (* (neg c) (/ -2 (- (sqrt (+ (* (* -4 c) a) (* b b))) b))) (* (/ -1 (+ (* b b) (+ (* (* -4 c) a) (* b b)))) (* (- b (sqrt (+ (* (* -4 c) a) (* b b)))) (* 2 c))) (/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (- (* b b) (* (* 4 a) c)) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (+ (* b b) (+ (* (* -4 c) a) (* b b))) (sqrt (+ (* (* -4 c) a) (* b b))) (sqrt (+ (* (* c a) -4) (* b b))) (- (sqrt (+ (* (* -4 c) a) (* b b))) b) (+ (sqrt (+ (* (* -4 c) a) (* b b))) b) (sqrt (+ (* (* -4 c) a) (* b b))) (- (sqrt (+ (* (* -4 c) a) (* b b))) b) (+ (* b b) (+ (* (* -4 c) a) (* b b))) (sqrt (- (* b b) (* (* 4 a) c))) (/ (+ (* b b) (+ (* (* -4 c) a) (* b b))) (* (* -2 a) (- (sqrt (+ (* (* -4 c) a) (* b b))) b))))
54.0ms
b
@-inf
((/ (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (- (* b b) (* (* 4 a) c)) (* (neg c) (/ -2 (- (sqrt (+ (* (* -4 c) a) (* b b))) b))) (>= b 0) (- 0 (* (/ 1/2 a) (- (sqrt (+ (* (* -4 c) a) (* b b))) b))) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* (+ (* (* a (/ c (* b b))) -2) 2) (neg b)) (/ (- (neg b) (/ 1 (sqrt (/ 1 (+ (* (* -4 c) a) (* b b)))))) (* 2 a)) (- (neg b) (/ 1 (sqrt (/ 1 (+ (* (* -4 c) a) (* b b)))))) (+ (* (sqrt (sqrt (+ (* (* -4 c) a) (* b b)))) (sqrt (sqrt (+ (* (* -4 c) a) (* b b))))) b) (sqrt (- (* b b) (* (* 4 a) c))) (sqrt (+ (* (* -4 c) a) (* b b))) (- (sqrt (+ (* (* -4 c) a) (* b b))) b) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (/ c (* b b)) (sqrt (/ 1 (+ (* (* -4 c) a) (* b b)))))
42.0ms
x
@0
((neg (log (- (/ 1 x) 1))) (log (- (/ 1 x) 1)) (- (/ 1 x) 1) (/ (- 1 x) x) (neg (log (- (/ 1 x) 1))) (log x) (neg (log (- (/ 1 x) 1))) (+ (log x) x) (neg (log (- (/ 1 x) 1))) (+ (* (+ (* 1/2 x) 1) x) (log x)) (+ (* 1/2 x) 1) (pow (pow x -1/2) 2) (- (pow (pow x -1/2) 2) 1) (neg (log (- (pow (pow x -1/2) 2) 1))) (log (- (pow (pow x -1/2) 2) 1)) (pow x -1/2))
42.0ms
b
@inf
((+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (- (* b b) (* (* 4 a) c)) (if (>= b 0) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (>= b 0) (if (>= b 0) (* (/ -2 (- (sqrt (+ (* (* -4 c) a) (* b b))) b)) c) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a))) (/ 2 (/ (- b (sqrt (+ (* (* -4 c) a) (* b b)))) c)) (- (neg b) (/ 1 (sqrt (/ 1 (+ (* (* -4 c) a) (* b b)))))) (+ (* (sqrt (sqrt (+ (* (* -4 c) a) (* b b)))) (sqrt (sqrt (+ (* (* -4 c) a) (* b b))))) b) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (/ (* 2 c) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c))))) (sqrt (- (* b b) (* (* 4 a) c))) (/ (+ (neg b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (sqrt (+ (* (* -4 c) a) (* b b))) (- (sqrt (+ (* (* -4 c) a) (* b b))) b) (- b (sqrt (+ (* (* -4 c) a) (* b b)))) (sqrt (/ 1 (+ (* (* -4 c) a) (* b b)))) (- (neg b) (sqrt (- (* b b) (* (* 4 a) c)))))

regimes1.3s (1.9%)

Memory
-139.6MiB live, 1 646.0MiB allocated
Counts
499 → 78
Calls

26 calls:

202.0ms
(*.f64 x x)
148.0ms
x
147.0ms
(exp.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))))
107.0ms
b
78.0ms
c
Compiler

Compiled 959 to 812 computations (15.3% saved)

analyze654.0ms (1%)

Memory
32.0MiB live, 674.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
22.2%22.2%77.7%0.1%0%0%0%1
29.4%27.8%66.6%0.1%0%5.6%0%2
50%44.4%44.4%0.1%0%11.1%0%3
59.7%51.3%34.7%0.1%0%13.9%0%4
67.2%56.9%27.7%0.1%0%15.3%0%5
74.4%62.4%21.5%0.1%0%16%0%6
78.9%64.9%17.3%0.1%0%17.7%0%7
80.8%66.3%15.8%0.1%0%17.9%0%8
85.9%69.9%11.5%0.1%0%18.5%0%9
88%70.7%9.7%0.1%0%19.6%0%10
90%72.1%8%0.1%0%19.8%0%11
92.3%73.5%6.2%0.1%0%20.3%0%12
Compiler

Compiled 153 to 106 computations (30.7% saved)

bsearch505.0ms (0.8%)

Memory
87.5MiB live, 856.5MiB allocated
Algorithm
25×binary-search
left-value
Stop Event
23×narrow-enough
predicate-same
Samples
283.0ms2 432×0valid
25.0ms128×2valid
12.0ms112×0invalid
Compiler

Compiled 6 378 to 5 539 computations (13.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 234.0ms
ival-div: 68.0ms (29% of total)
ival-sub: 67.0ms (28.6% of total)
ival-mult: 49.0ms (20.9% of total)
ival-add: 12.0ms (5.1% of total)
ival-fabs: 10.0ms (4.3% of total)
ival-sqrt: 8.0ms (3.4% of total)
ival-if: 4.0ms (1.7% of total)
ival-neg: 4.0ms (1.7% of total)
adjust: 3.0ms (1.3% of total)
ival->=: 3.0ms (1.3% of total)
ival-true: 2.0ms (0.9% of total)
exact: 2.0ms (0.9% of total)
ival-assert: 1.0ms (0.4% of total)

start0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated

end0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated

Profiling

Loading profile data...