
| Date: | Saturday, August 31st, 2024 |
|---|---|
| Commit: | ac261103 on main |
| Hostname: | nightly with Racket 8.11.1 |
| Seed: | 2024244 |
| 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: 8.6min)
| 52.8s | 247 606× | 0 | valid |
| 2.4s | 10 608× | 0 | invalid |
| 11.0ms | 74× | 1 | valid |
ival-mult: 9.4s (21.4% of total)const: 6.6s (15.1% of total)ival-<=: 6.4s (14.6% of total)ival-div: 4.1s (9.2% of total)ival-sin: 1.8s (4.1% of total)ival-sub: 1.8s (4.1% of total)ival-fabs: 1.7s (3.9% of total)ival-sqrt: 1.7s (3.9% of total)ival-add: 1.6s (3.5% of total)ival-log: 1.4s (3.3% of total)ival-and: 1.1s (2.6% of total)ival-exp: 863.0ms (2% of total)ival-cos: 792.0ms (1.8% of total)ival-floor: 702.0ms (1.6% of total)ival-neg: 558.0ms (1.3% of total)ival-pi: 468.0ms (1.1% of total)exact: 416.0ms (0.9% of total)ival-fmax: 413.0ms (0.9% of total)ival-tan: 384.0ms (0.9% of total)ival-==: 271.0ms (0.6% of total)ival-if: 253.0ms (0.6% of total)ival-<: 231.0ms (0.5% of total)ival-log2: 224.0ms (0.5% of total)ival-asin: 194.0ms (0.4% of total)ival->: 170.0ms (0.4% of total)ival-atan: 111.0ms (0.3% of total)ival-assert: 91.0ms (0.2% of total)ival-sinh: 71.0ms (0.2% of total)ival->=: 67.0ms (0.2% of total)adjust: 2.0ms (0% of total)Compiled 51 523 776 to 632 089 computations (98.8% saved)
| 270× | egg-herbie |
| 2 274 778× | lower-fma.f64 |
| 2 274 392× | lower-fma.f32 |
| 1 060 292× | lower-*.f64 |
| 1 057 354× | lower-*.f32 |
| 568 278× | lower-+.f64 |
| 365× | iter limit |
| 201× | node limit |
| 64× | saturated |
| 5× | unsound |
145 calls:
| 1.7s | s |
| 1.5s | sinTheta_i |
| 1.3s | uy |
| 1.2s | cosTheta_i |
| 1.2s | u |
Compiled 23 359 to 15 217 computations (34.9% saved)
Compiled 773 316 to 287 941 computations (62.8% saved)
| 1 510 886× | lower-fma.f64 |
| 1 510 642× | lower-fma.f32 |
| 957 466× | lower-*.f64 |
| 955 434× | lower-*.f32 |
| 467 580× | lower-/.f64 |
| 273× | iter limit |
| 179× | node limit |
| 29× | fuel |
| 2× | unsound |
| 1× | done |
Compiled 35 594 to 12 504 computations (64.9% saved)
| 558 298× | lower-fma.f64 |
| 557 916× | lower-fma.f32 |
| 499 960× | lower-*.f64 |
| 497 208× | lower-*.f32 |
| 384 888× | lower-/.f64 |
| 249× | iter limit |
| 114× | node limit |
| 6× | unsound |
| 12.7s | 27 476× | 0 | valid |
| 1.9s | 1 117× | 1 | valid |
| 1.0s | 1 931× | 0 | invalid |
| 198.0ms | 91× | 5 | exit |
| 43.0ms | 104× | 0 | exit |
| 1.0ms | 1× | 1 | exit |
Compiled 137 340 to 6 003 computations (95.6% saved)
ival-mult: 4.2s (35.6% of total)ival-div: 1.7s (14.5% of total)ival-add: 1.0s (8.5% of total)ival-pow2: 515.0ms (4.4% of total)ival-log: 507.0ms (4.3% of total)ival-sub: 450.0ms (3.8% of total)ival-pow: 420.0ms (3.6% of total)ival-sqrt: 407.0ms (3.4% of total)ival-sin: 361.0ms (3.1% of total)ival-exp: 303.0ms (2.6% of total)adjust: 267.0ms (2.3% of total)ival-cos: 216.0ms (1.8% of total)ival-neg: 203.0ms (1.7% of total)ival-pi: 186.0ms (1.6% of total)const: 169.0ms (1.4% of total)ival-floor: 116.0ms (1% of total)ival-log2: 116.0ms (1% of total)ival-fmax: 111.0ms (0.9% of total)ival-tan: 108.0ms (0.9% of total)ival-if: 91.0ms (0.8% of total)ival-log1p: 68.0ms (0.6% of total)exact: 57.0ms (0.5% of total)ival-fabs: 40.0ms (0.3% of total)ival-atan: 33.0ms (0.3% of total)ival-true: 26.0ms (0.2% of total)ival-asin: 23.0ms (0.2% of total)ival-acos: 21.0ms (0.2% of total)ival-expm1: 20.0ms (0.2% of total)ival-cbrt: 15.0ms (0.1% of total)ival-sinh: 15.0ms (0.1% of total)ival-assert: 12.0ms (0.1% of total)ival->=: 10.0ms (0.1% of total)ival->: 9.0ms (0.1% of total)ival-e: 6.0ms (0.1% of total)ival-<: 4.0ms (0% of total)1248 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 476.0ms | s | @ | 0 | ((* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u) (* (neg s) (log (- (/ 1 (+ (+ (* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u)) (/ 1 (+ 1 (exp (/ (pow (pow (PI) 1/4) 4) s)))))) 1))) (neg s) (/ 0 s) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (* 0 (* u u)) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4) (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (log (+ 1 (exp (/ (neg (PI)) s)))) (pow (pow (PI) 1/4) 4) (pow (PI) 1/4) (/ (PI) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (* u (PI)) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (* (PI) u) 1/2) (* -1/4 (PI)))) |
| 309.0ms | h | @ | -inf | ((exp (* (log (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/2)) (log2 (exp (* (log (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/2))) (* (log (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/2) (log (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))))) (log2 (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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.w (floor d)) 2)))) (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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.w (floor d)) 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))) (* (* (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)) (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)) (+ (* (floor d) (* (floor d) (* dY.w dY.w))) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (exp (+ (* (log (floor h)) 2) (* (log dY.v) 2))) (+ (* (floor d) (* (floor d) (* dX.w dX.w))) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (pow (* dX.w (floor d)) 2) (pow (* dX.u (floor w)) 2) (pow (* dY.v (floor h)) 2) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (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))) (+ (* (floor d) (* (floor d) (* dY.w dY.w))) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))))) (+ (* (log (floor h)) 2) (* (log dY.v) 2)) (sqrt (fmax (+ (* (floor d) (* (floor d) (* dX.w dX.w))) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (exp (+ (* (log (floor h)) 2) (* (log dY.v) 2)))) (* (* (floor d) dY.w) (* (floor d) dY.w)))))) |
| 216.0ms | w | @ | inf | ((exp (* (log (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/2)) (log2 (exp (* (log (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/2))) (* (log (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/2) (log (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))))) (log2 (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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.w (floor d)) 2)))) (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))) (+ (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.w (floor d)) 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))) (* (* (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)) (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)) (+ (* (floor d) (* (floor d) (* dY.w dY.w))) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (exp (+ (* (log (floor h)) 2) (* (log dY.v) 2))) (+ (* (floor d) (* (floor d) (* dX.w dX.w))) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (pow (* dX.w (floor d)) 2) (pow (* dX.u (floor w)) 2) (pow (* dY.v (floor h)) 2) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (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))) (+ (* (floor d) (* (floor d) (* dY.w dY.w))) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))))) (+ (* (log (floor h)) 2) (* (log dY.v) 2)) (sqrt (fmax (+ (* (floor d) (* (floor d) (* dX.w dX.w))) (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (exp (+ (* (log (floor h)) 2) (* (log dY.v) 2)))) (* (* (floor d) dY.w) (* (floor d) dY.w)))))) |
| 181.0ms | u | @ | 0 | ((* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u) (* (neg s) (log (- (/ 1 (+ (+ (* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u)) (/ 1 (+ 1 (exp (/ (pow (pow (PI) 1/4) 4) s)))))) 1))) (neg s) (/ 0 s) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (* 0 (* u u)) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4) (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (* 4 (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)))) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* (PI) u) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (log (+ 1 (exp (/ (neg (PI)) s)))) (pow (pow (PI) 1/4) 4) (pow (PI) 1/4) (/ (PI) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (* u (PI)) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (* (PI) u) 1/2) (* -1/4 (PI)))) |
| 180.0ms | s | @ | 0 | ((* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (+ (+ (* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u)) (/ 1 (+ 1 (exp (/ (PI) s))))) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u) (* (neg s) (log (- (/ 1 (+ (+ (* (exp (neg (log (+ 1 (exp (/ (neg (PI)) s)))))) u) (* (/ -1 (+ (exp (/ (PI) s)) 1)) u)) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (neg (PI)) (PI) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4) (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (* u (PI)) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1)) (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1) (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) (+ (* (/ (+ (* (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2) -16) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) s) -1/2) (* (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 4)) (log (+ 1 (exp (/ (neg (PI)) s)))) (/ (PI) s) (/ (neg (PI)) s) (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s))))) (+ (* 16 (pow (+ (* (* u (PI)) 1/2) (* -1/4 (PI))) 2)) 0)) |
| 30× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 2.6% | 97.4% | 0% | 0% | 0% | 0 |
| 0% | 0% | 2.6% | 97.4% | 0% | 0% | 0% | 1 |
| 7.8% | 0.2% | 2.4% | 97.4% | 0% | 0% | 0% | 2 |
| 8.5% | 0.2% | 2.4% | 97.4% | 0% | 0% | 0% | 3 |
| 12.8% | 0.3% | 2.3% | 97.4% | 0% | 0% | 0% | 4 |
| 47% | 1.2% | 1.4% | 97.4% | 0% | 0% | 0% | 5 |
| 51.8% | 1.3% | 1.2% | 97.4% | 0% | 0.1% | 0% | 6 |
| 69.5% | 1.8% | 0.8% | 97.4% | 0% | 0.1% | 0% | 7 |
| 71.6% | 1.8% | 0.7% | 97.4% | 0% | 0.1% | 0% | 8 |
| 81.1% | 2.1% | 0.5% | 97.4% | 0% | 0.1% | 0% | 9 |
| 82.6% | 2.1% | 0.4% | 97.4% | 0% | 0.1% | 0% | 10 |
| 88.3% | 2.2% | 0.3% | 97.4% | 0% | 0.1% | 0% | 11 |
| 89.1% | 2.2% | 0.3% | 97.4% | 0% | 0.1% | 0% | 12 |
Compiled 2 586 to 1 076 computations (58.4% saved)
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
log.f32 | #f | sensitivity | 1030 | 76 |
-.f32 | #f | cancellation | 389 | 31 |
sqrt.f32 | #f | oflow-rescue | 328 | 0 |
cos.f32 | #f | sensitivity | 194 | 15 |
tan.f32 | (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))) | cancellation | 184 | 20 |
/.f32 | #f | o/n | 122 | 0 |
exp.f32 | #f | sensitivity | 34 | 12 |
/.f32 | #f | u/n | 19 | 0 |
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-rescue | 12 | 0 |
| ↳ | (*.f32 sinTheta_O sinTheta_O) | underflow | 314 | |
| ↳ | (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))) | underflow | 12 | |
| ↳ | (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))) | underflow | 157 | |
| ↳ | (*.f32 eta eta) | underflow | 11 | |
/.f32 | #f | o/o | 10 | 0 |
/.f32 | (/.f32 (neg.f32 (log.f32 (-.f32 #s(literal 1 binary32) u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))) | n/o | 7 | 0 |
| ↳ | (/.f32 sin2phi (*.f32 alphay alphay)) | overflow | 12 | |
| ↳ | (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))) | overflow | 12 | |
*.f32 | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) | n*u | 4 | 0 |
*.f32 | #f | n*o | 2 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 1631 | 52 |
| - | 390 | 5607 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1631 | 23 | 29 |
| - | 390 | 113 | 5494 |
| number | freq |
|---|---|
| 0 | 5659 |
| 1 | 1717 |
| 2 | 294 |
| 3 | 10 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 19 | 1 | 2 |
| - | 4 | 1 | 3 |
| 2.4s | 15 308× | 0 | valid |
| 24.0ms | 52× | 1 | valid |
Compiled 16 376 to 1 722 computations (89.5% saved)
ival-mult: 549.0ms (33.4% of total)ival-div: 239.0ms (14.5% of total)ival-sub: 152.0ms (9.2% of total)ival-sqrt: 90.0ms (5.5% of total)ival-sin: 89.0ms (5.4% of total)ival-add: 86.0ms (5.2% of total)ival-log: 72.0ms (4.4% of total)const: 50.0ms (3% of total)ival-cos: 47.0ms (2.9% of total)ival-neg: 43.0ms (2.6% of total)ival-exp: 41.0ms (2.5% of total)ival-floor: 41.0ms (2.5% of total)ival-pi: 20.0ms (1.2% of total)ival-tan: 18.0ms (1.1% of total)ival-fmax: 16.0ms (1% of total)ival-if: 13.0ms (0.8% of total)ival-true: 13.0ms (0.8% of total)exact: 13.0ms (0.8% of total)ival-log2: 12.0ms (0.7% of total)ival-atan: 12.0ms (0.7% of total)ival-fabs: 8.0ms (0.5% of total)ival-assert: 6.0ms (0.4% of total)ival-sinh: 5.0ms (0.3% of total)ival-asin: 4.0ms (0.2% of total)ival->=: 3.0ms (0.2% of total)ival->: 2.0ms (0.1% of total)adjust: 2.0ms (0.1% of total)ival-<: 1.0ms (0.1% of total)| 30× | egg-herbie |
| 132 696× | lower-fma.f64 |
| 132 696× | lower-fma.f32 |
| 46 474× | lower-*.f64 |
| 46 188× | lower-*.f32 |
| 27 984× | unsub-neg |
| 60× | iter limit |
| 31× | saturated |
| 29× | node limit |
Compiled 51 644 to 16 024 computations (69% saved)
| 54× | left-value |
| 24× | binary-search |
| 24× | narrow-enough |
Compiled 2 801 to 1 793 computations (36% saved)
Loading profile data...