Herbie run

Date:Sunday, June 30th, 2024
Commit:2aadce88 on main
Hostname:nightly with Racket 8.11.1
Seed:2024182
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: 5.3min)

sample2.2min (40.7%)

Memory
404.7MiB live, 138 801.9MiB allocated
Samples
30.8s46 872×2valid
28.8s147 865×0invalid
20.4s91 862×1valid
14.8s3 725×5exit
9.2s89 841×0valid
4.2s2 593×3valid
292.0ms3 699×0exit
Precisions
Click to see histograms. Total time spent on operations: 1.5min
ival-pow: 15.3s (16.9% of total)
ival-tan: 13.2s (14.7% of total)
ival-mult: 7.3s (8% of total)
ival-cos: 5.4s (6% of total)
...in/eval/compile.rkt:111:19: 5.2s (5.8% of total)
ival-div: 4.9s (5.4% of total)
ival-add: 4.5s (5% of total)
ival-sub: 4.2s (4.6% of total)
ival-sin: 4.0s (4.4% of total)
adjust: 3.8s (4.2% of total)
ival-log: 3.6s (4% of total)
ival-exp: 3.2s (3.6% of total)
ival-<=: 3.0s (3.4% of total)
ival-expm1: 2.9s (3.3% of total)
ival-fabs: 2.3s (2.5% of total)
ival-<: 1.2s (1.3% of total)
ival-sqrt: 1.1s (1.2% of total)
ival-cbrt: 969.0ms (1.1% of total)
ival-log1p: 907.0ms (1% of total)
ival->: 778.0ms (0.9% of total)
ival-and: 619.0ms (0.7% of total)
ival-fmin: 486.0ms (0.5% of total)
ival-neg: 478.0ms (0.5% of total)
ival-atan: 319.0ms (0.4% of total)
...in/eval/compile.rkt:110:19: 308.0ms (0.3% of total)
ival-assert: 166.0ms (0.2% of total)
ival-true: 63.0ms (0.1% of total)
Bogosity

simplify50.7s (15.9%)

Memory
-297.2MiB live, 44 155.4MiB allocated
Algorithm
245×egg-herbie
Rules
85 159×fma-define
76 392×fmm-def
48 337×distribute-lft-in
47 741×times-frac
43 146×associate-*r*
Stop Event
162×node limit
82×saturated
unsound
Counts
56 073 → 58 831

soundness28.5s (8.9%)

Memory
56.8MiB live, 22 839.9MiB allocated
Rules
33 880×log1p-expm1-u
29 579×fma-define
26 834×expm1-log1p-u
26 159×fmm-def
21 244×times-frac
Stop Event
112×node limit
21×fuel
saturated
done
Compiler

Compiled 21 057 to 6 554 computations (68.9% saved)

rewrite25.8s (8.1%)

Memory
-65.8MiB live, 21 093.9MiB allocated
Algorithm
108×batch-egg-rewrite
Rules
69 746×log1p-expm1-u
53 158×expm1-log1p-u
22 495×prod-diff
21 553×add-exp-log
21 454×pow1
Stop Event
108×node limit
Counts
1 218 → 37 446

prune18.5s (5.8%)

Memory
-660.4MiB live, 25 416.2MiB allocated
Counts
82 077 → 1 961
Compiler

Compiled 65 911 to 35 946 computations (45.5% saved)

localize18.3s (5.7%)

Memory
386.4MiB live, 20 923.7MiB allocated
Samples
3.7s6 691×1valid
3.3s14 984×0valid
3.2s3 461×2valid
770.0ms2 041×0invalid
554.0ms425×3valid
179.0ms124×5exit
103.0ms178×0exit
Compiler

Compiled 17 764 to 2 630 computations (85.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.4s
ival-div: 1.5s (17.3% of total)
ival-mult: 1.2s (14.3% of total)
ival-pow: 947.0ms (11.2% of total)
ival-add: 783.0ms (9.3% of total)
ival-sub: 500.0ms (5.9% of total)
ival-cos: 456.0ms (5.4% of total)
...in/eval/compile.rkt:111:19: 450.0ms (5.3% of total)
adjust: 446.0ms (5.3% of total)
ival-pow2: 388.0ms (4.6% of total)
ival-log: 312.0ms (3.7% of total)
ival-tan: 294.0ms (3.5% of total)
ival-sqrt: 272.0ms (3.2% of total)
ival-log1p: 180.0ms (2.1% of total)
ival-exp: 174.0ms (2.1% of total)
ival-cbrt: 146.0ms (1.7% of total)
ival-sin: 103.0ms (1.2% of total)
ival-neg: 79.0ms (0.9% of total)
ival-hypot: 45.0ms (0.5% of total)
...in/eval/compile.rkt:110:19: 40.0ms (0.5% of total)
ival-cosh: 39.0ms (0.5% of total)
ival-atan: 34.0ms (0.4% of total)
ival-true: 24.0ms (0.3% of total)
ival-expm1: 23.0ms (0.3% of total)
ival-atan2: 16.0ms (0.2% of total)
ival-assert: 11.0ms (0.1% of total)
ival-e: 9.0ms (0.1% of total)

eval15.8s (5%)

Memory
858.1MiB live, 20 292.1MiB allocated
Compiler

Compiled 2 224 657 to 308 557 computations (86.1% saved)

bsearch7.5s (2.4%)

Memory
51.0MiB live, 8 327.7MiB allocated
Algorithm
89×binary-search
25×left-value
Stop Event
85×narrow-enough
predicate-same
Samples
4.5s1 312×5exit
843.0ms7 907×0valid
771.0ms2 581×1valid
169.0ms932×0exit
122.0ms1 529×0invalid
109.0ms360×2valid
Compiler

Compiled 15 376 to 11 394 computations (25.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.7s
ival-pow: 4.6s (79.3% of total)
adjust: 253.0ms (4.4% of total)
ival-mult: 227.0ms (3.9% of total)
ival-add: 226.0ms (3.9% of total)
ival-div: 196.0ms (3.4% of total)
ival-sub: 134.0ms (2.3% of total)
ival-sqrt: 59.0ms (1% of total)
ival-neg: 42.0ms (0.7% of total)
ival-cos: 14.0ms (0.2% of total)
ival-true: 11.0ms (0.2% of total)
...in/eval/compile.rkt:110:19: 10.0ms (0.2% of total)
ival-assert: 5.0ms (0.1% of total)
ival-sin: 5.0ms (0.1% of total)
ival-exp: 4.0ms (0.1% of total)
ival-cbrt: 3.0ms (0.1% of total)
ival-expm1: 2.0ms (0% of total)

explain6.2s (1.9%)

Memory
285.9MiB live, 8 537.8MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation412933
log.f64#fsensitivity7680
/.f64#fu/u4320
sqrt.f64#foflow-rescue3840
+.f64#fcancellation3340
/.f64#fu/n1120
pow.f64#fsensitivity880
/.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/u210
(*.f64 b eps)underflow132
(-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64))underflow151
(-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))underflow132
(*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))underflow236
(*.f64 a eps)underflow151
-.f64#fnan-rescue210
sqrt.f64#fuflow-rescue140
/.f64(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x x))n/o40
(*.f64 x x)overflow57
/.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 (neg.f64 x))sensitivity10
Confusion
Predicted +Predicted -
+515517
-1361860
Precision
0.9742959742959743
Recall
0.9967130703789636
Confusion?
Predicted +Predicted MaybePredicted -
+5155143
-136191841
Precision?
0.9708865514650639
Recall?
0.9994199535962877
Freqs
test
numberfreq
01877
14490
2641
3102
458
Total Confusion?
Predicted +Predicted MaybePredicted -
+2800
-000
Precision?
1.0
Recall?
1.0
Samples
2.0s2 986×2valid
1.0s5 714×1valid
527.0ms5 470×0valid
260.0ms166×3valid
Compiler

Compiled 2 522 to 980 computations (61.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.2s
ival-tan: 688.0ms (21.5% of total)
ival-cos: 383.0ms (12% of total)
ival-div: 332.0ms (10.4% of total)
ival-sin: 331.0ms (10.4% of total)
adjust: 315.0ms (9.9% of total)
ival-log: 229.0ms (7.2% of total)
ival-sub: 189.0ms (5.9% of total)
ival-mult: 139.0ms (4.4% of total)
ival-exp: 134.0ms (4.2% of total)
ival-pow: 134.0ms (4.2% of total)
ival-add: 102.0ms (3.2% of total)
ival-sqrt: 68.0ms (2.1% of total)
ival-log1p: 43.0ms (1.3% of total)
ival-atan: 22.0ms (0.7% of total)
ival-expm1: 22.0ms (0.7% of total)
ival-neg: 19.0ms (0.6% of total)
ival-cbrt: 17.0ms (0.5% of total)
ival-true: 13.0ms (0.4% of total)
...in/eval/compile.rkt:110:19: 9.0ms (0.3% of total)
ival-assert: 6.0ms (0.2% of total)

series6.0s (1.9%)

Memory
420.7MiB live, 6 784.9MiB allocated
Counts
1 218 → 18 627
Calls

4959 calls:

TimeVariablePointExpression
136.0ms
N
@-inf
(/ 1/4 (pow N 3))
117.0ms
x
@0
(sqrt (+ 2 (* x (+ 1 (* 1/2 x)))))
110.0ms
eps
@-inf
(- (+ (* (neg eps) (+ (* (sin x) (/ (+ 1/6 (- (+ (* -1/2 (+ 1 (/ (pow (sin x) 2) (pow (cos x) 2)))) (/ (* 1/6 (pow (sin x) 2)) (pow (cos x) 2))) (* (pow (sin x) 2) (/ (+ 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (pow (cos x) 2))))) (cos x))) (* (* (+ 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (/ (sin x) (cos x))) -1/3))) -1/6) (- (+ (* -1/2 (+ 1 (/ (pow (sin x) 2) (pow (cos x) 2)))) (/ (* 1/6 (pow (sin x) 2)) (pow (cos x) 2))) (* (pow (sin x) 2) (/ (+ 1 (/ (pow (sin x) 2) (pow (cos x) 2))) (pow (cos x) 2)))))
95.0ms
c
@inf
(- (pow b 2) (* c (* a -4)))
94.0ms
b_2
@-inf
(/ (* a c) b_2)

preprocess5.9s (1.8%)

Memory
-370.9MiB live, 6 052.2MiB allocated
Algorithm
28×egg-herbie
Rules
8 308×fmm-def
6 663×fma-define
4 254×div-sub
2 652×sub-neg
2 620×times-frac
Stop Event
23×saturated
node limit
Compiler

Compiled 10 084 to 4 070 computations (59.6% saved)

regimes3.5s (1.1%)

Memory
79.7MiB live, 4 879.9MiB allocated
Counts
3 467 → 320
Calls

43 calls:

938.0ms
x
409.0ms
(/.f64 #s(literal 1 binary64) n)
214.0ms
(-.f64 (cbrt.f64 (+.f64 x #s(literal 1 binary64))) (cbrt.f64 x))
204.0ms
a
169.0ms
eps
Compiler

Compiled 1 474 to 984 computations (33.2% saved)

analyze2.5s (0.8%)

Memory
-255.2MiB live, 2 047.7MiB allocated
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)

end0.0ms (0%)

Memory
0.4MiB live, 0.3MiB allocated

Profiling

Loading profile data...