Herbie run

Date:Wednesday, October 2nd, 2024
Commit:913204d2 on artem-batch-finish-rewrite
Hostname:nightly with Racket 8.10
Seed:2024276
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: 9.0min)

end1.6min (17.4%)

Memory
-13.7MiB live, 47 586.0MiB allocated

sample1.4min (15.4%)

Memory
1 072.4MiB live, 104 536.4MiB allocated
Samples
57.5s251 262×0valid
2.5s11 160×0invalid
1.8s4 674×1valid
412.0ms1 671×1exit
273.0ms677×1invalid
Precisions
Click to see histograms. Total time spent on operations: 50.4s
ival-mult: 10.0s (19.8% of total)
ival-<=: 7.5s (14.8% of total)
const: 7.3s (14.5% of total)
ival-div: 5.0s (9.8% of total)
ival-sub: 1.9s (3.8% of total)
ival-add: 1.9s (3.8% of total)
ival-fabs: 1.7s (3.4% of total)
ival-sqrt: 1.4s (2.8% of total)
ival-log: 1.4s (2.8% of total)
ival-floor: 1.2s (2.5% of total)
ival-and: 1.2s (2.4% of total)
ival-exp: 1.1s (2.2% of total)
ival-sin: 1.1s (2.2% of total)
ival-pow: 808.0ms (1.6% of total)
ival-sinu: 721.0ms (1.4% of total)
ival-neg: 621.0ms (1.2% of total)
ival-e: 597.0ms (1.2% of total)
ival-cosu: 490.0ms (1% of total)
exact: 469.0ms (0.9% of total)
ival-cos: 425.0ms (0.8% of total)
ival-log1p: 420.0ms (0.8% of total)
ival-tan: 379.0ms (0.8% of total)
ival-fmax: 337.0ms (0.7% of total)
adjust: 303.0ms (0.6% of total)
ival-pi: 302.0ms (0.6% of total)
ival-asin: 288.0ms (0.6% of total)
ival-if: 281.0ms (0.6% of total)
ival-log2: 266.0ms (0.5% of total)
ival-==: 214.0ms (0.4% of total)
ival-<: 176.0ms (0.3% of total)
ival->: 156.0ms (0.3% of total)
ival-assert: 106.0ms (0.2% of total)
ival-atan: 99.0ms (0.2% of total)
ival-sinh: 82.0ms (0.2% of total)
ival->=: 49.0ms (0.1% of total)
ival-true: 10.0ms (0% of total)
Bogosity

eval1.2min (13.2%)

Memory
969.6MiB live, 115 304.7MiB allocated
Compiler

Compiled 53 376 321 to 647 017 computations (98.8% saved)

simplify51.5s (9.5%)

Memory
338.8MiB live, 57 191.4MiB allocated
Algorithm
279×egg-herbie
Stop Event
376×iter limit
209×node limit
67×saturated
unsound
Counts
63 196 → 62 945

regimes47.4s (8.7%)

Memory
-403.9MiB live, 67 950.6MiB allocated
Counts
23 261 → 418
Calls

152 calls:

3.3s
s
1.3s
cosTheta_i
1.3s
(+.f32 (/.f32 (*.f32 #s(literal 1/4 binary32) (exp.f32 (/.f32 (neg.f32 r) s))) (*.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) s) r)) (/.f32 (*.f32 #s(literal 3/4 binary32) (exp.f32 (/.f32 (neg.f32 r) (*.f32 #s(literal 3 binary32) s)))) (*.f32 (*.f32 (*.f32 #s(literal 6 binary32) (PI.f32)) s) r)))
1.2s
(*.f32 (neg.f32 s) (log.f32 (-.f32 (/.f32 #s(literal 1 binary32) (+.f32 (*.f32 u (-.f32 (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (exp.f32 (/.f32 (neg.f32 (PI.f32)) s)))) (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (exp.f32 (/.f32 (PI.f32) s)))))) (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (exp.f32 (/.f32 (PI.f32) s)))))) #s(literal 1 binary32))))
1.1s
r
Compiler

Compiled 22 977 to 15 792 computations (31.3% saved)

soundness40.2s (7.4%)

Memory
404.4MiB live, 26 956.6MiB allocated
Stop Event
292×iter limit
188×node limit
31×fuel
unsound
Compiler

Compiled 70 105 to 19 424 computations (72.3% saved)

prune35.8s (6.6%)

Memory
-319.9MiB live, 61 019.4MiB allocated
Counts
256 750 → 7 886
Compiler

Compiled 1 274 854 to 424 002 computations (66.7% saved)

rewrite29.3s (5.4%)

Memory
442.6MiB live, 36 948.0MiB allocated
Stop Event
258×iter limit
119×node limit
unsound
Counts
2 367 → 83 765

localize25.3s (4.7%)

Memory
-23.4MiB live, 36 771.0MiB allocated
Samples
13.8s28 530×0valid
1.8s1 483×1valid
758.0ms1 552×0invalid
147.0ms37×2valid
110.0ms48×5exit
62.0ms94×1exit
Compiler

Compiled 292 139 to 13 498 computations (95.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.7s
ival-mult: 3.5s (27.9% of total)
ival-div: 2.3s (18.4% of total)
ival-add: 1.1s (8.5% of total)
ival-pow2: 611.0ms (4.8% of total)
ival-sub: 581.0ms (4.6% of total)
ival-sqrt: 576.0ms (4.5% of total)
ival-pow: 560.0ms (4.4% of total)
ival-sin: 302.0ms (2.4% of total)
ival-log: 293.0ms (2.3% of total)
ival-neg: 260.0ms (2% of total)
ival-exp: 229.0ms (1.8% of total)
adjust: 216.0ms (1.7% of total)
ival-cos: 209.0ms (1.6% of total)
const: 205.0ms (1.6% of total)
ival-atan: 159.0ms (1.3% of total)
ival-sinu: 158.0ms (1.2% of total)
ival-log1p: 137.0ms (1.1% of total)
ival-if: 130.0ms (1% of total)
ival-expm1: 126.0ms (1% of total)
ival-cosu: 124.0ms (1% of total)
ival-fmax: 119.0ms (0.9% of total)
ival-floor: 98.0ms (0.8% of total)
ival-log2: 98.0ms (0.8% of total)
ival-tanu: 81.0ms (0.6% of total)
ival-pi: 80.0ms (0.6% of total)
exact: 78.0ms (0.6% of total)
ival-tan: 71.0ms (0.6% of total)
ival-fabs: 58.0ms (0.5% of total)
ival-e: 42.0ms (0.3% of total)
ival-asin: 32.0ms (0.3% of total)
ival-true: 31.0ms (0.2% of total)
ival-assert: 16.0ms (0.1% of total)
ival-sinh: 15.0ms (0.1% of total)
ival->=: 13.0ms (0.1% of total)
ival->: 11.0ms (0.1% of total)
ival-acos: 10.0ms (0.1% of total)
ival-cbrt: 8.0ms (0.1% of total)
ival-<: 5.0ms (0% of total)
ival-hypot: 4.0ms (0% of total)

series23.8s (4.4%)

Memory
-65.6MiB live, 32 750.8MiB allocated
Counts
2 367 → 63 196
Calls

1281 calls:

TimeVariablePointExpression
348.0ms
x
@inf
((* c (- (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (log (+ 1 (* (+ (* y (- (exp x) 1)) -1) (* y (- (exp x) 1))))))) (- (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (log (+ 1 (* (+ (* y (- (exp x) 1)) -1) (* y (- (exp x) 1)))))) (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (pow (* y (- (exp x) 1)) 3) (* (log (+ 1 (/ (* (- (exp (* x 3)) 1) y) (+ (* (exp x) (exp x)) (+ (exp x) 1))))) c) (log (+ 1 (/ (* (- (exp (* x 3)) 1) y) (+ (* (exp x) (exp x)) (+ (exp x) 1))))) (* y x) (* (log (+ 1 (* y (- (exp x) 1)))) c) (log (+ 1 (* y (- (exp x) 1)))) (* (+ (* (+ (* -1/2 y) 1/2) (* y x)) y) x) (+ (* (+ (* -1/2 y) 1/2) (* y x)) y) (- (* (* (- y (* y y)) 1/2) x) y) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (/ (* (+ (* (pow (* (- y (* y y)) x) 2) 1/4) (* (neg y) y)) x) (- (* (* (- y (* y y)) 1/2) x) y)) (+ (* (/ -2 y) (/ (+ (* 1/4 (* x x)) -1) y)) (- (+ (* (* x x) -1/2) (/ (* x x) y)) (+ (* (/ (* (* x (- x (+ (* 1/2 x) -1))) (+ (* 1/2 x) -1)) (* (* y y) x)) -2) (/ (* (+ (* 1/2 x) -1) x) y)))) (+ (* (/ (* (* x (- x (+ (* 1/2 x) -1))) (+ (* 1/2 x) -1)) (* (* y y) x)) -2) (/ (* (+ (* 1/2 x) -1) x) y)) (+ (* (* x x) -1/2) (/ (* x x) y)) (/ (* (* x (- x (+ (* 1/2 x) -1))) (+ (* 1/2 x) -1)) (* (* y y) x)) (log (+ 1 (* (+ (* y (- (exp x) 1)) -1) (* y (- (exp x) 1))))) (+ (* (pow (* (- y (* y y)) x) 2) 1/4) (* (neg y) y)) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (/ -2 y) (/ (+ (* 1/4 (* x x)) -1) y)) (- (+ (* (* x x) -1/2) (/ (* x x) y)) (+ (* (/ (* (* x (- x (+ (* 1/2 x) -1))) (+ (* 1/2 x) -1)) (* (* y y) x)) -2) (/ (* (+ (* 1/2 x) -1) x) y)))) (* y y)))
308.0ms
h
@inf
((/ (neg (floor w)) (neg (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)))) dY.u))) (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)) (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)) (exp (* (log (* dX.u (floor w))) 2)) (exp (+ (* (log dY.v) 2) (* (log (floor h)) 2))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)))) (>= (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2)) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (sqrt (fmax (+ (exp (* (log (* dX.u (floor w))) 2)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (+ (* (log dY.v) 2) (* (log (floor h)) 2)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (exp (+ (* (log dY.v) 2) (* (log (floor h)) 2)))))) (+ (* (* (pow (floor h) 2) dX.v) dX.v) (pow (* dX.u (floor w)) 2)) (sqrt (fmax (+ (* (* (pow (floor h) 2) dX.v) dX.v) (pow (* dX.u (floor w)) 2)) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))
238.0ms
d
@inf
((* (* (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)) (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.w (floor d)) 2)) (pow (* dY.v (floor h)) 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.w (floor d)) 2)) (pow (* dY.v (floor h)) 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.w (floor d)) 2)) (pow (* dY.v (floor h)) 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 w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)) (* (* (pow (floor w) 2) dY.u) dY.u) (+ (* (* (pow (floor d) 2) dX.w) dX.w) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2))) (exp (+ (* (log (floor d)) 2) (* (log dY.w) 2))) (+ (* (* (pow (floor h) 2) dX.v) dX.v) (+ (pow (* dX.u (floor w)) 2) (pow (* dX.w (floor d)) 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))))) (pow (* dY.v (floor h)) 2) (pow (* (floor d) dX.w) 2) (+ (* (* (pow (floor h) 2) dY.v) dY.v) (* (* (pow (floor w) 2) dY.u) dY.u)) (+ (* (exp (log (* dY.u (floor w)))) (exp (log (* dY.u (floor w))))) (+ (pow (* dY.w (floor d)) 2) (pow (* dY.v (floor h)) 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))) (+ (* (exp (log (* dY.u (floor w)))) (exp (log (* dY.u (floor w))))) (+ (pow (* dY.w (floor d)) 2) (pow (* dY.v (floor h)) 2))))) (sqrt (fmax (+ (* (* (pow (floor d) 2) dX.w) dX.w) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (* (* (floor d) dY.w) (* (floor d) dY.w))))) (+ (* (log (floor d)) 2) (* (log dY.w) 2)) (sqrt (fmax (+ (* (* (pow (floor h) 2) dX.v) dX.v) (+ (pow (* dX.u (floor w)) 2) (pow (* dX.w (floor d)) 2))) (+ (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (exp (+ (* (log (floor d)) 2) (* (log dY.w) 2)))))))
200.0ms
s
@inf
((* (- (/ 1 (+ (exp (/ (neg (PI)) s)) 1)) (/ 1 (+ (exp (/ (PI) s)) 1))) u) (* (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) -1) (* (neg s) (log (/ (- (pow (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s))))) -3) 1) (+ (pow (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s))))) -2) (- 1 (* (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) -1)))))) (neg 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 s) (/ 1 (/ (/ s 0) 1)) (/ (/ s 0) 1) (+ (* (/ 1 (/ (/ s 0) 1)) -1/2) (+ 0 (* (* (PI) (+ (* -1/2 u) 1/4)) -4))) (* (* (PI) (+ (* -1/2 u) 1/4)) -4) (+ (* -1/2 (* (PI) u)) (* 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))) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1)) (+ (* -4 (+ (/ (* (PI) (PI)) s) (/ (/ (* (PI) (PI)) s) u))) (- (+ (* 4 (+ (* (/ (PI) u) (/ (PI) s)) (/ (* (PI) (PI)) s))) (* (/ (PI) (* u u)) (/ (PI) s))) (* (/ (PI) (* u u)) (/ (PI) s)))) (- (+ (* 4 (+ (* (/ (PI) u) (/ (PI) s)) (/ (* (PI) (PI)) s))) (* (/ (PI) (* u u)) (/ (PI) s))) (* (/ (PI) (* u u)) (/ (PI) s))) (+ (/ (* (PI) (PI)) s) (/ (/ (* (PI) (PI)) s) u)) (+ (* 4 (+ (* (/ (PI) u) (/ (PI) s)) (/ (* (PI) (PI)) s))) (* (/ (PI) (* u u)) (/ (PI) s))) (PI) (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s))))) (exp (/ (PI) s)) (exp (/ (neg (PI)) s)) (+ (* -1/2 u) 1/4) (* (neg s) (log (- (/ 1 (+ (* u (- (/ 1 (+ 1 (exp (/ (neg (PI)) s)))) (/ 1 (+ 1 (exp (/ (PI) s)))))) (/ 1 (+ 1 (exp (/ (PI) s)))))) 1))) (+ (* (+ (* -1/2 (* (PI) u)) (* 1/4 (PI))) (/ 4 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)) s) -1/2) (* (+ (* (* u (PI)) -1/2) (* 1/4 (PI))) -4)) (+ (* 1/4 (PI)) (* (* (PI) u) -1/2)))
197.0ms
h
@-inf
((/ (* (neg dX.v) (floor h)) -1) (* (* (floor h) dX.v) (* (floor h) dX.v)) (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)) (* (* (floor w) dX.u) (* (floor w) dX.u)) (/ (floor h) 1) (/ (pow (* dY.v (floor h)) 2) 1) (sqrt (fmax (+ (pow (* dX.v (floor h)) 2) (pow (* dX.u (floor w)) 2)) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* dX.u (floor w)) 2)) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.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 w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))))) (+ (* (* dY.u dY.u) (pow (floor w) 2)) (/ (pow (* dY.v (floor h)) 2) 1)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* dY.u dY.u) (pow (floor w) 2)) (/ (pow (* dY.v (floor h)) 2) 1)))) (+ (* dX.v (floor h)) (* dX.u (floor w))) (+ (* (/ (* (* dX.u dX.u) (pow (floor w) 4)) (+ (* dX.v (floor h)) (* dX.u (floor w)))) (/ (* dX.u dX.u) (- (* dX.u (floor w)) (* dX.v (floor h))))) (neg (/ (pow (* dX.v (floor h)) 4) (- (pow (* dX.u (floor w)) 2) (pow (* dX.v (floor h)) 2))))) (/ (pow (* dX.v (floor h)) 4) (- (pow (* dX.u (floor w)) 2) (pow (* dX.v (floor h)) 2))))

analyze21.7s (4%)

Memory
-34.3MiB live, 31 522.7MiB allocated
Algorithm
31×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%5.8%94.2%0%0%0%0
0%0%5.8%94.2%0%0%0%1
3.4%0.2%5.6%94.2%0%0%0%2
3.8%0.2%5.6%94.2%0%0%0%3
5.7%0.3%5.4%94.2%0%0%0%4
20.8%1.2%4.6%94.2%0%0%0%5
29.6%1.7%4%94.2%0%0.1%0%6
47.8%2.5%2.8%94.2%0%0.5%0%7
48.7%2.6%2.7%94.2%0%0.5%0%8
58.9%3.1%2.2%94.2%0%0.5%0%9
66.8%3.5%1.7%94.2%0%0.5%0%10
69.4%3.6%1.6%94.2%0%0.6%0%11
71.5%3.7%1.5%94.2%0%0.6%0%12
Compiler

Compiled 2 600 to 1 074 computations (58.7% saved)

preprocess9.0s (1.7%)

Memory
104.1MiB live, 10 801.8MiB allocated
Algorithm
31×egg-herbie
Stop Event
62×iter limit
33×saturated
29×node limit
Compiler

Compiled 92 552 to 21 301 computations (77% saved)

explain8.8s (1.6%)

Memory
-201.3MiB live, 13 061.8MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f32#fsensitivity102273
-.f32#fcancellation38723
sqrt.f32#foflow-rescue3390
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))sensitivity2090
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation18311
cos.f32#fsensitivity17020
/.f32#fo/n1340
-.f64(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))cancellation380
exp.f32#fsensitivity3020
/.f32#fo/o200
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-rescue180
(*.f32 sinTheta_O sinTheta_O)underflow270
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow18
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow135
(*.f32 eta eta)underflow18
*.f64(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))n*u170
/.f32#fu/n150
/.f32(/.f32 (neg.f32 (log.f32 (-.f32 #s(literal 1 binary32) u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))n/o60
(/.f32 sin2phi (*.f32 alphay alphay))overflow13
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))overflow13
*.f32(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*u10
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))oflow-rescue10
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)overflow1
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))overflow1
(pow.f64 (E.f64) x)overflow1
(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))overflow1
+.f32(+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi))cancellation10
Confusion
Predicted +Predicted -
+181357
-4275639
Precision
0.809375
Recall
0.9695187165775401
Confusion?
Predicted +Predicted MaybePredicted -
+18133423
-427955544
Precision?
0.7796538623891938
Recall?
0.9877005347593583
Freqs
test
numberfreq
05696
11910
2309
321
Total Confusion?
Predicted +Predicted MaybePredicted -
+2021
-602
Precision?
0.7857142857142857
Recall?
0.9565217391304348
Samples
2.5s15 462×0valid
145.0ms410×1valid
Compiler

Compiled 23 833 to 2 304 computations (90.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.7s
ival-mult: 552.0ms (31.7% of total)
ival-div: 210.0ms (12.1% of total)
ival-floor: 137.0ms (7.9% of total)
ival-add: 112.0ms (6.4% of total)
ival-sqrt: 92.0ms (5.3% of total)
ival-sub: 81.0ms (4.7% of total)
ival-exp: 70.0ms (4% of total)
ival-log: 69.0ms (4% of total)
ival-sin: 47.0ms (2.7% of total)
ival-pow: 39.0ms (2.2% of total)
ival-sinu: 34.0ms (2% of total)
const: 30.0ms (1.7% of total)
ival-tan: 26.0ms (1.5% of total)
ival-neg: 26.0ms (1.5% of total)
ival-cos: 23.0ms (1.3% of total)
ival-cosu: 23.0ms (1.3% of total)
ival-pi: 21.0ms (1.2% of total)
ival-fmax: 18.0ms (1% of total)
ival-e: 18.0ms (1% of total)
ival-true: 16.0ms (0.9% of total)
exact: 14.0ms (0.8% of total)
ival-if: 13.0ms (0.7% of total)
adjust: 12.0ms (0.7% of total)
ival-log2: 12.0ms (0.7% of total)
ival-fabs: 8.0ms (0.5% of total)
ival-assert: 7.0ms (0.4% of total)
ival-log1p: 7.0ms (0.4% of total)
ival-atan: 6.0ms (0.3% 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->=: 3.0ms (0.2% of total)
ival-<: 1.0ms (0.1% of total)

bsearch413.0ms (0.1%)

Memory
38.2MiB live, 740.7MiB allocated
Algorithm
64×left-value
57×binary-search
Stop Event
57×narrow-enough
Samples
64.0ms215×1valid
60.0ms537×0valid
6.0ms73×0invalid
1.0ms1invalid
Compiler

Compiled 8 087 to 5 219 computations (35.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 106.0ms
ival-pow: 38.0ms (35.8% of total)
ival-e: 29.0ms (27.3% of total)
ival-mult: 15.0ms (14.1% of total)
ival-sub: 9.0ms (8.5% of total)
ival-log1p: 8.0ms (7.5% of total)
adjust: 4.0ms (3.8% of total)
ival-true: 1.0ms (0.9% of total)
exact: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)

start3.0ms (0%)

Memory
7.2MiB live, 7.2MiB allocated

Profiling

Loading profile data...