Date: | Sunday, December 15th, 2024 |
---|---|
Commit: | b408c651 on autofix-7-1 |
Hostname: | nightly with Racket 8.10 |
Seed: | 2024350 |
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: | 413 859.9 MB |
Time bar (total: 6.2min)
54.3s | 433 826× | 0 | valid |
10.1s | 26 512× | 1 | valid |
4.2s | 9 359× | 2 | valid |
2.5s | 4 364× | 0 | invalid |
1.0s | 8 138× | 0 | exit |
324.0ms | 901× | 3 | valid |
ival-mult
: 14.9s (28.6% of total)ival-add
: 5.2s (10% of total)ival-div
: 4.5s (8.7% of total)const
: 4.5s (8.6% of total)ival-exp
: 3.5s (6.6% of total)ival-hypot
: 2.8s (5.4% of total)ival-sub
: 2.5s (4.8% of total)ival-log
: 2.3s (4.3% of total)adjust
: 2.1s (4% of total)ival-sin
: 1.4s (2.7% of total)ival-asin
: 1.3s (2.4% of total)ival-cos
: 1.1s (2.2% of total)ival-atan2
: 908.0ms (1.7% of total)ival-sqrt
: 863.0ms (1.7% of total)ival-acosh
: 536.0ms (1% of total)ival-asinh
: 428.0ms (0.8% of total)ival->
: 394.0ms (0.8% of total)exact
: 380.0ms (0.7% of total)ival-sinu
: 370.0ms (0.7% of total)ival-pow
: 368.0ms (0.7% of total)ival-pi
: 307.0ms (0.6% of total)ival-true
: 280.0ms (0.5% of total)ival-neg
: 216.0ms (0.4% of total)ival-assert
: 205.0ms (0.4% of total)ival-atanh
: 185.0ms (0.4% of total)ival-fabs
: 180.0ms (0.3% of total)ival-<=
: 156.0ms (0.3% of total)ival->=
: 152.0ms (0.3% of total)ival-cosu
: 85.0ms (0.2% of total)ival-and
: 77.0ms (0.1% of total)461× | egg-herbie |
608× | iter limit |
346× | node limit |
113× | saturated |
2× | unsound |
382× | iter limit |
239× | node limit |
35× | fuel |
22× | done |
1× | saturated |
1× | unsound |
Compiled 32 217 to 4 289 computations (86.7% saved)
440× | iter limit |
192× | node limit |
5× | saturated |
5× | unsound |
12.3s | 41 581× | 0 | valid |
7.7s | 5 227× | 1 | valid |
2.9s | 1 620× | 2 | valid |
2.3s | 367× | 5 | exit |
957.0ms | 2 165× | 0 | invalid |
379.0ms | 604× | 0 | exit |
101.0ms | 124× | 3 | valid |
54.0ms | 24× | 4 | valid |
Compiled 66 356 to 6 043 computations (90.9% saved)
ival-mult
: 4.8s (24.3% of total)ival-add
: 2.3s (11.6% of total)ival-div
: 2.1s (10.6% of total)adjust
: 2.0s (9.9% of total)ival-exp
: 1.4s (7.3% of total)const
: 1.3s (6.8% of total)ival-pow
: 1.0s (5.2% of total)ival-log
: 859.0ms (4.3% of total)ival-sub
: 720.0ms (3.6% of total)ival-hypot
: 605.0ms (3% of total)ival-sqrt
: 412.0ms (2.1% of total)ival-sin
: 363.0ms (1.8% of total)ival-atan2
: 248.0ms (1.2% of total)ival-cos
: 228.0ms (1.1% of total)ival-neg
: 217.0ms (1.1% of total)ival-cosh
: 195.0ms (1% of total)ival-sinh
: 144.0ms (0.7% of total)ival-acos
: 131.0ms (0.7% of total)ival-asin
: 119.0ms (0.6% of total)ival-pow2
: 115.0ms (0.6% of total)exact
: 80.0ms (0.4% of total)ival-fabs
: 73.0ms (0.4% of total)ival-pi
: 72.0ms (0.4% of total)ival-log1p
: 71.0ms (0.4% of total)ival-asinh
: 44.0ms (0.2% of total)ival-true
: 43.0ms (0.2% of total)ival-copysign
: 38.0ms (0.2% of total)ival-sinu
: 29.0ms (0.1% of total)ival-assert
: 23.0ms (0.1% of total)ival-acosh
: 21.0ms (0.1% of total)ival-cbrt
: 10.0ms (0.1% of total)ival-cosu
: 8.0ms (0% of total)ival->
: 1.0ms (0% of total)ival-then
: 0.0ms (0% of total)Compiled 5 801 879 to 456 634 computations (92.1% saved)
Operator | Subexpression | Explanation | Count | |
---|---|---|---|---|
sqrt.f64 | #f | oflow-rescue | 1245 | 0 |
-.f64 | #f | cancellation | 763 | 4 |
/.f64 | #f | o/o | 663 | 0 |
/.f64 | #f | o/n | 191 | 0 |
sqrt.f32 | #f | oflow-rescue | 188 | 0 |
sin.f64 | #f | sensitivity | 187 | 1 |
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))) | sensitivity | 182 | 2 |
+.f64 | #f | cancellation | 168 | 2 |
sqrt.f64 | #f | uflow-rescue | 135 | 0 |
log.f32 | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) | sensitivity | 131 | 2 |
log.f64 | (log.f64 (+.f64 (fabs.f64 x) (sqrt.f64 (+.f64 (*.f64 x x) #s(literal 1 binary64))))) | sensitivity | 128 | 0 |
/.f64 | #f | n/o | 103 | 0 |
-.f64 | #f | nan-rescue | 95 | 0 |
/.f64 | #f | u/u | 64 | 0 |
*.f64 | #f | n*u | 60 | 0 |
+.f64 | #f | nan-rescue | 42 | 0 |
/.f64 | #f | u/n | 38 | 0 |
*.f64 | #f | n*o | 30 | 0 |
/.f64 | #f | n/u | 17 | 0 |
*.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*u | 4 | 0 |
↳ | (*.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)))) | overflow | 5 | |
↳ | (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))) | overflow | 5 | |
↳ | (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)))) | underflow | 4 | |
exp.f64 | #f | sensitivity | 2 | 0 |
log.f64 | (log.f64 (+.f64 (fabs.f64 x) (sqrt.f64 (+.f64 (*.f64 x x) #s(literal 1 binary64))))) | oflow-rescue | 2 | 0 |
↳ | (+.f64 (fabs.f64 x) (sqrt.f64 (+.f64 (*.f64 x x) #s(literal 1 binary64)))) | overflow | 2 | |
↳ | (*.f64 x x) | overflow | 57 | |
↳ | (+.f64 (*.f64 x x) #s(literal 1 binary64)) | overflow | 57 | |
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-rescue | 1 | 0 |
↳ | (+.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)) | overflow | 1 | |
↳ | (*.f64 (atan2.f64 x.im x.re) y.re) | overflow | 1 | |
↳ | (*.f64 x.re x.re) | overflow | 82 | |
↳ | (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) | overflow | 129 | |
↳ | (*.f64 x.im x.im) | overflow | 71 | |
log.f32 | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) | oflow-rescue | 1 | 0 |
↳ | (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32)))) | overflow | 1 | |
↳ | (+.f32 (*.f32 x x) #s(literal 1 binary32)) | overflow | 62 | |
↳ | (*.f32 x x) | overflow | 62 | |
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-rescue | 1 | 0 |
↳ | (+.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)) | overflow | 1 | |
↳ | (*.f64 (atan2.f64 x.im x.re) y.re) | overflow | 1 | |
↳ | (*.f64 x.re x.re) | overflow | 82 | |
↳ | (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) | overflow | 129 | |
↳ | (*.f64 x.im x.im) | overflow | 71 |
Predicted + | Predicted - | |
---|---|---|
+ | 3670 | 35 |
- | 176 | 10711 |
Predicted + | Predicted Maybe | Predicted - | |
---|---|---|---|
+ | 3670 | 3 | 32 |
- | 176 | 5 | 10706 |
number | freq |
---|---|
0 | 10746 |
1 | 3253 |
2 | 591 |
3 | 2 |
Predicted + | Predicted Maybe | Predicted - | |
---|---|---|---|
+ | 37 | 0 | 0 |
- | 1 | 0 | 19 |
3.9s | 25 480× | 0 | valid |
1.5s | 2 764× | 1 | valid |
642.0ms | 880× | 2 | valid |
21.0ms | 56× | 3 | valid |
1.0ms | 2× | 4 | valid |
1.0ms | 2× | 5 | exit |
Compiled 13 558 to 2 283 computations (83.2% saved)
ival-mult
: 1.5s (32.5% of total)ival-add
: 627.0ms (14.1% of total)adjust
: 327.0ms (7.3% of total)ival-div
: 289.0ms (6.5% of total)ival-exp
: 277.0ms (6.2% of total)ival-hypot
: 266.0ms (6% of total)const
: 245.0ms (5.5% of total)ival-sub
: 237.0ms (5.3% of total)ival-log
: 205.0ms (4.6% of total)ival-asin
: 93.0ms (2.1% of total)ival-cos
: 79.0ms (1.8% of total)ival-sqrt
: 73.0ms (1.6% of total)ival-sin
: 64.0ms (1.4% of total)ival-atan2
: 45.0ms (1% of total)ival-fabs
: 29.0ms (0.7% of total)ival-true
: 25.0ms (0.6% of total)ival-pow
: 22.0ms (0.5% of total)ival-log1p
: 22.0ms (0.5% of total)exact
: 21.0ms (0.5% of total)ival-pi
: 13.0ms (0.3% of total)ival-copysign
: 13.0ms (0.3% of total)ival-assert
: 13.0ms (0.3% of total)ival-neg
: 12.0ms (0.3% of total)ival-sinu
: 7.0ms (0.2% of total)ival-cosu
: 6.0ms (0.1% of total)57× | egg-herbie |
114× | iter limit |
60× | saturated |
54× | node limit |
Compiled 75 888 to 14 639 computations (80.7% saved)
132 calls:
1.0s | re |
637.0ms | y.re |
598.0ms | im |
544.0ms | y.im |
452.0ms | x.re |
Compiled 13 954 to 9 849 computations (29.4% saved)
1272 calls:
Time | Variable | Point | Expression | |
---|---|---|---|---|
122.0ms | base | @ | -inf | ((/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (/ (log (sqrt (+ (* im im) (* re re)))) (log base)) (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) (log base)) (log im) (log base) (/ (* (log base) (log (sqrt (+ (* im im) (* re re))))) (log base)) (/ (/ (* (log base) (log (sqrt (+ (* im im) (* re re))))) (log base)) (log base)) (* (log base) (log (sqrt (+ (* im im) (* re re))))) (* (* (log base) (log (sqrt (+ (* im im) (* re re))))) (pow (log base) 4)) (/ (* (* (log base) (log (sqrt (+ (* im im) (* re re))))) (pow (log base) 4)) (pow (log base) 6)) (* (* (/ (* (log base) (log (sqrt (+ (* im im) (* re re))))) (pow (log base) 6)) (pow (log base) 3)) (log base)) (* (/ (* (log base) (log (sqrt (+ (* im im) (* re re))))) (pow (log base) 6)) (pow (log base) 3)) (/ (* (log base) (log (sqrt (+ (* im im) (* re re))))) (pow (log base) 6)) (pow (log base) 6) (pow (log base) 4) (pow (log base) 3)) |
115.0ms | x | @ | -inf | ((log (* (log x) x)) (* (log x) x) (log x) (log (/ x (log x))) (/ x (log x))) |
103.0ms | base | @ | 0 | ((/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (sqrt (+ (* re re) (* im im))) (* (atan2 im re) 0) (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (* (log base) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) (log base))) |
101.0ms | base | @ | -inf | ((* (log (sqrt (+ (* im im) (* re re)))) (/ 1 (log base))) (log (sqrt (+ (* im im) (* re re)))) (sqrt (+ (* im im) (* re re))) (/ 1 (log base)) (/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (* (/ 1/2 (log base)) (log (+ (* re re) (* im im)))) (/ 1/2 (log base)) (log base) (* (log base) (/ (log (sqrt (+ (* im im) (* re re)))) (pow (log base) 2))) (/ (log (sqrt (+ (* im im) (* re re)))) (pow (log base) 2)) (log (sqrt (+ (* im im) (* re re)))) (* (sqrt (log base)) (sqrt (log base))) (/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (/ (log (sqrt (+ (* im im) (* re re)))) (* (sqrt (log base)) (sqrt (log base)))) (/ (+ (* (log (sqrt (+ (* re re) (* im im)))) (log base)) (* (atan2 im re) 0)) (+ (* (log base) (log base)) (* 0 0))) (/ (log im) (/ (pow (log base) 4) (pow (log base) 3))) (log im) (/ (pow (log base) 4) (pow (log base) 3)) (log (+ (* re re) (* im im))) (pow (log base) 2) (sqrt (log base)) (pow (log base) 4) (pow (log base) 3)) |
98.0ms | x.im | @ | -inf | ((* (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)) (* (+ (* (log (sqrt (+ (* x.im x.im) (* x.re x.re)))) (/ y.im y.re)) (atan2 x.im x.re)) y.re) (* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))) (* (pow (sqrt (+ (* x.im x.im) (* x.re x.re))) y.re) (sin (* (atan2 x.im x.re) y.re))) (pow (sqrt (+ (* x.im x.im) (* x.re x.re))) y.re) (sin (* (atan2 x.im x.re) y.re)) (exp (* (neg y.re) (neg (log x.im)))) (* (neg y.re) (neg (log x.im))) (* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))) (* (pow (sqrt (+ (* x.im x.im) (* x.re x.re))) y.re) (sin (* (atan2 x.im x.re) y.re))) (* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))) (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (pow (sqrt (+ (* x.im x.im) (* x.re x.re))) y.re) (sqrt (+ (* x.im x.im) (* x.re x.re))) (sqrt (+ (* x.re x.re) (* x.im x.im))) (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (+ (* x.re x.re) (* x.im x.im)) (* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))) (+ (* (log (sqrt (+ (* x.im x.im) (* x.re x.re)))) (/ y.im y.re)) (atan2 x.im x.re)) (* (atan2 x.im x.re) y.re) (pow (sqrt (+ (* x.im x.im) (* x.re x.re))) y.re) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) (+ (* y.im (/ (log (sqrt (+ (* x.im x.im) (* x.re x.re)))) y.re)) (atan2 x.im x.re)) (* (+ (* y.im (/ (log (sqrt (+ (* x.im x.im) (* x.re x.re)))) y.re)) (atan2 x.im x.re)) y.re) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) (sin (* (atan2 x.im x.re) y.re)) (* (atan2 x.im x.re) y.im)) |
Compiled 249 255 to 106 711 computations (57.2% saved)
243× | binary-search |
185× | left-value |
235× | narrow-enough |
8× | predicate-same |
1.8s | 15 583× | 0 | valid |
1.1s | 2 330× | 1 | valid |
81.0ms | 260× | 2 | valid |
38.0ms | 115× | 3 | valid |
Compiled 147 009 to 84 702 computations (42.4% saved)
ival-mult
: 637.0ms (28% of total)ival-hypot
: 315.0ms (13.8% of total)ival-log
: 194.0ms (8.5% of total)ival-add
: 168.0ms (7.4% of total)ival-sin
: 151.0ms (6.6% of total)adjust
: 140.0ms (6.1% of total)ival-sub
: 123.0ms (5.4% of total)ival-exp
: 115.0ms (5% of total)ival-div
: 104.0ms (4.6% of total)ival-cos
: 95.0ms (4.2% of total)ival-atan2
: 87.0ms (3.8% of total)const
: 68.0ms (3% of total)ival-asin
: 25.0ms (1.1% of total)ival-sqrt
: 20.0ms (0.9% of total)ival-true
: 14.0ms (0.6% of total)ival-assert
: 8.0ms (0.4% of total)exact
: 5.0ms (0.2% of total)ival-fabs
: 4.0ms (0.2% of total)ival-neg
: 3.0ms (0.1% of total)ival-pi
: 2.0ms (0.1% of total)58× | search |
Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
---|---|---|---|---|---|---|---|
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 |
Compiled 1 498 to 816 computations (45.5% saved)
Loading profile data...