Herbie run

Date:Sunday, November 17th, 2024
Commit:11ad3452 on zane-server-no-place-mode
Hostname:nightly with Racket 8.10
Seed:2024322
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

Time bar (total: 6.7min)

sample1.4min (20.5%)

Memory
308.3MiB live, 99 436.8MiB allocated
Samples
55.0s262 422×0valid
2.6s7 842×1valid
2.1s11 183×0invalid
647.0ms2 183×2valid
317.0ms694×1invalid
250.0ms1 592×1exit
0.0ms4valid
Precisions
Click to see histograms. Total time spent on operations: 49.7s
ival-mult: 10.1s (20.2% of total)
const: 6.9s (13.9% of total)
ival-<=: 6.6s (13.4% of total)
ival-div: 3.8s (7.6% of total)
ival-add: 2.5s (5% of total)
ival-sub: 2.3s (4.6% of total)
ival-fabs: 1.8s (3.7% of total)
ival-sqrt: 1.5s (3% of total)
ival-log: 1.3s (2.6% of total)
ival-and: 1.2s (2.5% of total)
ival-sin: 1.2s (2.3% of total)
ival-exp: 1.1s (2.2% of total)
ival-floor: 892.0ms (1.8% of total)
ival-pow: 869.0ms (1.7% of total)
ival-cos: 729.0ms (1.5% of total)
ival-sinu: 644.0ms (1.3% of total)
ival-neg: 631.0ms (1.3% of total)
ival-fmax: 518.0ms (1% of total)
ival-tan: 511.0ms (1% of total)
exact: 473.0ms (1% of total)
ival-e: 459.0ms (0.9% of total)
ival-cosu: 426.0ms (0.9% of total)
ival-if: 420.0ms (0.8% of total)
adjust: 416.0ms (0.8% of total)
ival-pow2: 404.0ms (0.8% of total)
ival-log2: 386.0ms (0.8% of total)
ival-pi: 354.0ms (0.7% of total)
ival-log1p: 199.0ms (0.4% of total)
ival-==: 192.0ms (0.4% of total)
ival-<: 174.0ms (0.4% of total)
ival->: 158.0ms (0.3% of total)
ival-asin: 137.0ms (0.3% of total)
ival-atan: 128.0ms (0.3% of total)
ival-assert: 121.0ms (0.2% of total)
ival-sinh: 105.0ms (0.2% of total)
ival->=: 65.0ms (0.1% of total)
ival-true: 23.0ms (0% of total)
Bogosity

simplify49.3s (12.3%)

Memory
614.6MiB live, 46 878.7MiB allocated
Algorithm
297×egg-herbie
Stop Event
404×iter limit
250×node limit
39×saturated
unsound
Counts
14 947 → 14 864

regimes46.9s (11.7%)

Memory
-405.7MiB live, 56 661.9MiB allocated
Counts
20 290 → 441
Calls

160 calls:

2.2s
s
2.0s
u
1.3s
x
1.1s
v
992.0ms
(*.f32 x (PI.f32))
Compiler

Compiled 26 637 to 16 488 computations (38.1% saved)

soundness40.9s (10.2%)

Memory
295.0MiB live, 26 939.9MiB allocated
Stop Event
303×iter limit
200×node limit
33×fuel
unsound
Compiler

Compiled 97 953 to 21 807 computations (77.7% saved)

eval38.1s (9.5%)

Memory
696.8MiB live, 57 410.1MiB allocated
Compiler

Compiled 35 911 158 to 601 033 computations (98.3% saved)

rewrite30.1s (7.5%)

Memory
-171.0MiB live, 33 215.4MiB allocated
Stop Event
275×iter limit
126×node limit
unsound
Counts
2 505 → 84 546

prune27.5s (6.9%)

Memory
-646.5MiB live, 38 049.2MiB allocated
Counts
142 047 → 7 158
Compiler

Compiled 1 353 852 to 397 596 computations (70.6% saved)

localize27.0s (6.7%)

Memory
277.4MiB live, 33 278.5MiB allocated
Samples
13.7s28 789×0valid
2.4s2 078×1valid
1.2s2 186×0invalid
568.0ms501×2valid
228.0ms84×5exit
71.0ms47×3valid
44.0ms106×0exit
0.0ms4valid
Compiler

Compiled 135 527 to 6 497 computations (95.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.9s
ival-mult: 4.3s (30.8% of total)
ival-div: 2.1s (15.2% of total)
ival-add: 1.1s (7.7% of total)
ival-sub: 624.0ms (4.5% of total)
ival-sqrt: 600.0ms (4.3% of total)
ival-pow: 589.0ms (4.2% of total)
ival-pow2: 568.0ms (4.1% of total)
ival-cosu: 464.0ms (3.3% of total)
ival-log: 450.0ms (3.2% of total)
adjust: 430.0ms (3.1% of total)
ival-exp: 291.0ms (2.1% of total)
ival-sin: 276.0ms (2% of total)
const: 224.0ms (1.6% of total)
ival-neg: 200.0ms (1.4% of total)
ival-cos: 175.0ms (1.3% of total)
ival-sinu: 157.0ms (1.1% of total)
ival-fmax: 153.0ms (1.1% of total)
ival-floor: 147.0ms (1.1% of total)
ival-log2: 139.0ms (1% of total)
ival-fabs: 117.0ms (0.8% of total)
ival-log1p: 113.0ms (0.8% of total)
ival-if: 107.0ms (0.8% of total)
ival-tan: 79.0ms (0.6% of total)
exact: 79.0ms (0.6% of total)
ival-pi: 74.0ms (0.5% of total)
ival-e: 67.0ms (0.5% of total)
ival-tanu: 66.0ms (0.5% of total)
ival-asin: 53.0ms (0.4% of total)
ival-atan: 41.0ms (0.3% of total)
ival-true: 30.0ms (0.2% of total)
ival-expm1: 26.0ms (0.2% of total)
ival-<: 19.0ms (0.1% of total)
ival-assert: 18.0ms (0.1% of total)
ival-cbrt: 14.0ms (0.1% of total)
ival->: 13.0ms (0.1% of total)
ival-acos: 12.0ms (0.1% of total)
ival->=: 10.0ms (0.1% of total)
ival-sinh: 8.0ms (0.1% of total)

analyze21.7s (5.4%)

Memory
87.3MiB live, 29 054.9MiB allocated
Algorithm
33×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%11.5%88.5%0%0%0%0
52.8%6.1%5.4%88.5%0%0%0%1
54.4%6.2%5.2%88.5%0%0%0%2
54.5%6.3%5.2%88.5%0%0%0%3
55.4%6.4%5.1%88.5%0%0%0%4
62.6%7.2%4.3%88.5%0%0%0%5
66.9%7.6%3.8%88.5%0%0.1%0%6
76.4%8.4%2.6%88.5%0%0.4%0%7
76.8%8.5%2.6%88.5%0%0.4%0%8
81.4%9%2%88.5%0%0.4%0%9
85.1%9.3%1.6%88.5%0%0.5%0%10
86.3%9.4%1.5%88.5%0%0.5%0%11
87.3%9.5%1.4%88.5%0%0.6%0%12
Compiler

Compiled 2 648 to 1 114 computations (57.9% saved)

series18.5s (4.6%)

Memory
26.9MiB live, 21 308.2MiB allocated
Counts
2 505 → 14 947
Calls

1452 calls:

TimeVariablePointExpression
367.0ms
dY.v
@inf
((- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)) (if (< (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (/ (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)))) (floor maxAniso)) (/ (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))) (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)))))) 1) (fmax 1 (* (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (floor maxAniso) (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))))) (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (/ (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)))) (floor maxAniso)) (/ (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))) (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)))))))) (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (floor maxAniso) (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))))) (< (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (/ (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)))) (floor maxAniso)) (/ (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))) (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)))))) 1) (if (> (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (floor maxAniso)) (/ (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)))) (floor maxAniso)) (/ (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))) (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)))))) (* (* (pow (floor h) 2) dX.v) dX.v) (* (* (pow (floor h) 2) dY.v) dY.v) (+ (* (* (pow (floor w) 2) dX.u) dX.u) (* (* (pow (floor h) 2) dX.v) dX.v)) (+ (* (* (pow (floor w) 2) dY.u) dY.u) (* (* (pow (floor h) 2) dY.v) dY.v)) (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) 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)) (+ (* (* (* (neg dX.v) (floor h)) dY.u) (floor w)) (neg (* (neg dY.v) (* (* (floor h) dX.u) (floor w))))) (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)))) (/ (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))) (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v))))) (/ (fabs (* (floor h) (- (* dY.v (* dX.u (floor w))) (* (* dY.u (floor w)) dX.v)))) (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))))) (pow (* dX.u (floor w)) 2) (+ (* (neg dY.v) dX.u) (* dY.u dX.v)) (sqrt (fmax (+ (* (* (pow (floor w) 2) dX.u) dX.u) (* (* (pow (floor h) 2) dX.v) dX.v)) (+ (* (* (pow (floor w) 2) dY.u) dY.u) (* (* (pow (floor h) 2) dY.v) dY.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))))) (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))) (/ (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)))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (/ (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)))) (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)))))) (/ (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)))) (fabs (+ (* (* (* (neg dX.v) (floor h)) dY.u) (floor w)) (neg (* (neg dY.v) (* (* (floor h) dX.u) (floor w))))))))
319.0ms
alphax
@0
((* (/ 1 (* (neg alphay) alphay)) (neg sin2phi)) (neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (/ 1 (* (neg alphay) alphay)) (/ (neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (+ (/ cos2phi (* alphax alphax)) (* (/ 1 (* (neg alphay) alphay)) (neg sin2phi)))) (/ (neg (log (- 1 u0))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (/ u0 (+ (/ sin2phi (* alphay alphay)) (/ cos2phi (* alphax alphax)))) (* alphax (/ (* alphax u0) cos2phi)) (/ (* alphax u0) cos2phi) (neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (/ (neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0))) (log (+ 1 (* (neg u0) u0))) (exp (* (log (/ (/ cos2phi (* alphax alphax)) u0)) -1)) (* (log (/ (/ cos2phi (* alphax alphax)) u0)) -1) (/ (neg (log (- 1 u0))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (/ u0 (+ (/ sin2phi (* alphay alphay)) (/ cos2phi (* alphax alphax)))) (- (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) (* (neg alphax) alphax)) (/ (* (- (pow (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) 2) (pow alphax 4)) (* (/ sin2phi (* (neg alphay) alphay)) (pow alphax -2))) (- (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) (* (neg alphax) alphax))) (/ (neg (log (- 1 u0))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (/ u0 (/ (* (- (pow (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) 2) (pow alphax 4)) (* (/ sin2phi (* (neg alphay) alphay)) (pow alphax -2))) (- (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) (* (neg alphax) alphax)))) (log (+ 1 u0)) (log (+ 1 (* (neg u0) u0))) (+ (* -1/2 u0) 1) (log (+ 1 u0)) (/ (/ cos2phi (* alphax alphax)) u0) (* (- (pow (* (* cos2phi (/ alphay sin2phi)) (neg alphay)) 2) (pow alphax 4)) (* (/ sin2phi (* (neg alphay) alphay)) (pow alphax -2))))
311.0ms
alphay
@inf
((/ 1 (sqrt (+ 1 (/ (* (/ 1 (+ (/ (* (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (* alphax alphax)) (/ (* (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (* alphay alphay)))) u0) (- 1 u0))))) (sqrt (/ 1 (+ (/ (/ u0 (- 1 u0)) (+ (/ (pow (sin (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphay alphay)) (/ (pow (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphax alphax)))) 1))) (/ 1 (+ (/ (/ u0 (- 1 u0)) (+ (/ (pow (sin (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphay alphay)) (/ (pow (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphax alphax)))) 1)) (+ (/ (/ u0 (- 1 u0)) (+ (/ (pow (sin (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphay alphay)) (/ (pow (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (* alphax alphax)))) 1) (/ 1 (sqrt (+ 1 (/ (* (/ 1 (+ (/ (* (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (* alphax alphax)) (/ (* (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (* alphay alphay)))) u0) (- 1 u0))))) (+ (* 1/2 (PI)) (* u1 (* (PI) 2))) (/ 1 (sqrt (+ (/ (/ u0 (- 1 u0)) (+ (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2) (pow (/ (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphax) 2))) 1))) (sqrt (+ (/ (/ u0 (- 1 u0)) (+ (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2) (pow (/ (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphax) 2))) 1)) (+ (/ (/ u0 (- 1 u0)) (+ (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2) (pow (/ (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphax) 2))) 1) (/ 1 (/ (+ (* (/ (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphay) (* alphax alphax)) (* alphay (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2))) (* alphay (* alphax alphax)))) (+ 1 (/ (* (/ 1 (/ (+ (* (/ (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphay) (* alphax alphax)) (* alphay (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2))) (* alphay (* alphax alphax)))) u0) (- 1 u0))) (/ 1 (sqrt (+ 1 (/ (* (/ 1 (/ (+ (* (/ (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphay) (* alphax alphax)) (* alphay (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2))) (* alphay (* alphax alphax)))) u0) (- 1 u0))))) (* (/ 1 (+ (* (pow alphax -2) (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2)) (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2))) u0) (/ 1 (sqrt (+ 1 (/ (* (/ 1 (+ (* (pow alphax -2) (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2)) (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2))) u0) (- 1 u0))))) (sqrt (+ 1 (/ (* (/ 1 (+ (* (pow alphax -2) (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2)) (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2))) u0) (- 1 u0)))) (+ (* 2 u1) 1/2) (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) (cos (* (PI) (+ (* 2 u1) 1/2))) (pow (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) 2) (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (pow (/ (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphax) 2) (+ (* (/ (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphay) (* alphax alphax)) (* alphay (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2))) (+ (* (pow alphax -2) (pow (cos (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2)) (pow (/ (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) alphay) 2)))
238.0ms
dY.v
@inf
((* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)) (* (* (pow (floor w) 2) dX.u) dX.u) (* (pow (floor d) 2) (* dY.w 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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 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.w (floor d)) 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 d) dX.w) (* (floor d) dX.w))) (exp (* (log (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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 2)))) 1/2)) (log2 (exp (* (log (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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 2)))) 1/2))) (* (log (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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 2)))) 1/2) (log (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.w (floor d)) 2) (pow (* dY.v (floor h)) 2)) (pow (* dY.u (floor w)) 2)))) (+ (* (* dY.w dY.w) (pow (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))) (+ (+ (* (* (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 w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (* (* (floor d) dY.w) (* (floor d) dY.w))))) (* (+ (* (* (pow (floor d) 2) dY.w) (/ dY.w dY.u)) (* (pow (floor w) 2) dY.u)) dY.u) (+ (* (* (pow (floor d) 2) dY.w) (/ dY.w dY.u)) (* (pow (floor w) 2) dY.u)) (+ (* (* (pow (floor h) 2) dY.v) dY.v) (* (+ (* (* (pow (floor d) 2) dY.w) (/ dY.w dY.u)) (* (pow (floor w) 2) dY.u)) dY.u)) (+ (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (* (* (floor d) dX.w) (* (floor d) dX.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 w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (* (pow (floor d) 2) (* dY.w dY.w))))) (pow (* dY.u (floor w)) 2) (pow (* dY.w (floor d)) 2) (+ (* (* (pow (floor d) 2) dX.w) dX.w) (* (* (pow (floor w) 2) dX.u) dX.u)) (sqrt (fmax (+ (* (* (pow (floor h) 2) dX.v) dX.v) (+ (* (* (pow (floor d) 2) dX.w) dX.w) (* (* (pow (floor w) 2) dX.u) dX.u))) (+ (* (* dY.w dY.w) (pow (floor d) 2)) (+ (pow (* dY.v (floor h)) 2) (pow (* dY.u (floor w)) 2))))) (+ (* (* (pow (floor h) 2) dX.v) dX.v) (+ (* (* (pow (floor d) 2) dX.w) dX.w) (* (* (pow (floor w) 2) dX.u) dX.u))) (sqrt (fmax (+ (* (* (pow (floor h) 2) dX.v) dX.v) (+ (* (* (pow (floor d) 2) dX.w) dX.w) (* (* (pow (floor w) 2) dX.u) dX.u))) (+ (* (* (pow (floor d) 2) dY.w) dY.w) (+ (* (* (pow (floor h) 2) dY.v) dY.v) (* (* (pow (floor w) 2) dY.u) dY.u))))))
216.0ms
alphax
@-inf
((neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (/ (neg (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0)))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (- (log (+ 1 (* (neg u0) u0))) (log (+ 1 u0))) (log (+ 1 (* (neg u0) u0))) (/ (neg (log (- 1 u0))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (/ u0 (+ (/ sin2phi (* alphay alphay)) (/ cos2phi (* alphax alphax)))) (/ (* (* alphax alphax) u0) cos2phi) (* (* alphax alphax) u0) (/ (+ (* cos2phi (* (neg alphay) (/ alphay sin2phi))) (* (* alphax alphax) -1)) (* (* alphax alphax) (* (neg alphay) (/ alphay sin2phi)))) (+ (* cos2phi (* (neg alphay) (/ alphay sin2phi))) (* (* alphax alphax) -1)) (* (* alphax alphax) -1) (/ (neg (log (- 1 u0))) (+ (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (* (/ (neg (log (+ 1 (neg u0)))) (- (pow (/ cos2phi (* alphax alphax)) 2) (pow (/ sin2phi (* alphay alphay)) 2))) (- (/ cos2phi (* alphax alphax)) (/ sin2phi (* alphay alphay)))) (/ (neg (log (+ 1 (neg u0)))) (- (pow (/ cos2phi (* alphax alphax)) 2) (pow (/ sin2phi (* alphay alphay)) 2))) (* (neg (pow alphax 4)) (/ (log (+ 1 (neg u0))) (* cos2phi cos2phi))) (neg (pow alphax 4)) (exp (- (log cos2phi) (log (* alphax alphax)))) (log (- 1 u0)) (/ (neg (log (- 1 u0))) (+ (exp (- (log cos2phi) (log (* alphax alphax)))) (/ sin2phi (* alphay alphay)))) (neg (log (- 1 u0))) (log (+ 1 u0)) (/ u0 (/ (+ (* cos2phi (* (neg alphay) (/ alphay sin2phi))) (* (* alphax alphax) -1)) (* (* alphax alphax) (* (neg alphay) (/ alphay sin2phi))))) (log (+ 1 (neg u0))) (- (log cos2phi) (log (* alphax alphax))))

explain9.9s (2.5%)

Memory
-159.6MiB live, 12 984.1MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f32#fsensitivity98589
-.f32#fcancellation38333
sqrt.f32#foflow-rescue3460
sqrt.f64#foflow-rescue3120
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))sensitivity1980
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation18712
cos.f32(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))sensitivity1847
-.f64#fcancellation1650
/.f32#fo/n1280
exp.f32#fsensitivity4527
/.f32#fu/n220
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-rescue190
(*.f32 sinTheta_O sinTheta_O)underflow304
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow19
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow152
(*.f32 eta eta)underflow19
*.f64(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))n*u150
/.f32#fo/o100
/.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))overflow12
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))overflow12
sqrt.f64#fuflow-rescue40
sin.f32#fcancellation20
*.f32#fn*o20
*.f64(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (+.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))))))n*o10
Confusion
Predicted +Predicted -
+212756
-4715794
Precision
0.8187066974595842
Recall
0.9743472285845167
Confusion?
Predicted +Predicted MaybePredicted -
+21272630
-4711315663
Precision?
0.7814882032667877
Recall?
0.9862574438845625
Freqs
test
numberfreq
05850
12192
2396
310
Total Confusion?
Predicted +Predicted MaybePredicted -
+2300
-523
Precision?
0.7666666666666667
Recall?
1.0
Samples
2.6s16 130×0valid
189.0ms614×1valid
55.0ms148×2valid
1.0ms4valid
1.0ms3valid
Compiler

Compiled 16 934 to 1 875 computations (88.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0s
ival-mult: 638.0ms (32.5% of total)
ival-div: 208.0ms (10.6% of total)
ival-log: 168.0ms (8.6% of total)
ival-sqrt: 109.0ms (5.6% of total)
ival-sub: 108.0ms (5.5% of total)
ival-add: 105.0ms (5.4% of total)
ival-sinu: 82.0ms (4.2% of total)
ival-floor: 44.0ms (2.2% of total)
ival-exp: 42.0ms (2.1% of total)
ival-pow: 41.0ms (2.1% of total)
ival-cos: 41.0ms (2.1% of total)
ival-sin: 40.0ms (2% of total)
adjust: 33.0ms (1.7% of total)
ival-pow2: 31.0ms (1.6% of total)
ival-fabs: 29.0ms (1.5% of total)
const: 25.0ms (1.3% of total)
ival-cosu: 25.0ms (1.3% of total)
ival-neg: 25.0ms (1.3% of total)
ival-pi: 21.0ms (1.1% of total)
ival-e: 19.0ms (1% of total)
ival-tan: 18.0ms (0.9% of total)
ival-fmax: 16.0ms (0.8% of total)
ival-true: 16.0ms (0.8% of total)
exact: 16.0ms (0.8% of total)
ival-if: 13.0ms (0.7% of total)
ival-log2: 12.0ms (0.6% of total)
ival-assert: 8.0ms (0.4% of total)
ival-log1p: 8.0ms (0.4% of total)
ival-atan: 6.0ms (0.3% of total)
ival-asin: 4.0ms (0.2% of total)
ival-sinh: 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)

preprocess8.4s (2.1%)

Memory
265.0MiB live, 8 731.1MiB allocated
Algorithm
33×egg-herbie
Stop Event
66×iter limit
35×saturated
31×node limit
Compiler

Compiled 93 586 to 15 013 computations (84% saved)

bsearch700.0ms (0.2%)

Memory
-86.9MiB live, 1 125.9MiB allocated
Algorithm
68×binary-search
63×left-value
Stop Event
67×narrow-enough
predicate-same
Samples
238.0ms796×1valid
77.0ms785×0valid
25.0ms52×1invalid
10.0ms118×0invalid
5.0ms18×2valid
0.0ms3valid
Compiler

Compiled 14 613 to 8 765 computations (40% saved)

Precisions
Click to see histograms. Total time spent on operations: 291.0ms
ival-pow: 88.0ms (30.2% of total)
ival-e: 54.0ms (18.5% of total)
ival-log1p: 41.0ms (14.1% of total)
ival-mult: 31.0ms (10.6% of total)
ival-sub: 20.0ms (6.9% of total)
adjust: 18.0ms (6.2% of total)
ival-pow2: 15.0ms (5.1% of total)
ival-add: 8.0ms (2.7% of total)
ival-fabs: 5.0ms (1.7% of total)
ival-div: 4.0ms (1.4% of total)
ival-sqrt: 4.0ms (1.4% of total)
exact: 2.0ms (0.7% of total)
ival-assert: 1.0ms (0.3% of total)
ival-true: 1.0ms (0.3% of total)

start3.0ms (0%)

Memory
6.3MiB live, 6.2MiB allocated

end0.0ms (0%)

Memory
0.6MiB live, 0.5MiB allocated

Profiling

Loading profile data...