Herbie run

Date:Sunday, March 30th, 2025
Commit:2100b191 on main
Seed:2025089
Parameters:256 points for 4 iterations
Flags:
reduce:regimesreduce:binary-searchreduce:branch-expressionsreduce:simplifysetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default
Memory:380 715.9 MB

Time bar (total: 4.5min)

sample59.3s (22%)

Memory
329.8MiB live, 84 808.9MiB allocated; 27.4s collecting garbage
Samples
33.7s241 807×0valid
5.3s28 284×1valid
1.4s11 395×0invalid
816.0ms2 357×2valid
289.0ms1 565×1exit
163.0ms735×1invalid
Precisions
Click to see histograms. Total time spent on operations: 29.8s
ival-mult!: 8.6s (28.9% of total)
ival-div!: 3.2s (10.6% of total)
ival-log: 1.8s (6% of total)
ival-sqrt: 1.6s (5.5% of total)
ival-exp: 1.5s (5.1% of total)
ival-sin: 1.4s (4.9% of total)
ival-add!: 1.3s (4.2% of total)
ival-sub!: 1.2s (4.1% of total)
ival-fabs: 1.2s (4% of total)
ival-pow2: 1.1s (3.7% of total)
adjust: 982.0ms (3.3% of total)
ival-<=: 763.0ms (2.6% of total)
ival-floor: 753.0ms (2.5% of total)
ival-neg: 640.0ms (2.1% of total)
ival-sinu: 621.0ms (2.1% of total)
ival-cosu: 504.0ms (1.7% of total)
ival-cos: 473.0ms (1.6% of total)
ival-tan: 347.0ms (1.2% of total)
ival-and: 317.0ms (1.1% of total)
ival-fmax: 312.0ms (1% of total)
ival-if: 243.0ms (0.8% of total)
ival-log2: 208.0ms (0.7% of total)
ival-asin: 201.0ms (0.7% of total)
ival-log1p: 165.0ms (0.6% of total)
ival-sinh: 93.0ms (0.3% of total)
ival-atan: 84.0ms (0.3% of total)
ival->: 50.0ms (0.2% of total)
ival->=: 50.0ms (0.2% of total)
ival-assert: 29.0ms (0.1% of total)
ival-<: 29.0ms (0.1% of total)
ival-pi: 0.0ms (0% of total)
const: 0.0ms (0% of total)
Bogosity

prune54.3s (20.2%)

Memory
-203.3MiB live, 59 204.0MiB allocated; 8.1s collecting garbage
Counts
137 574 → 4 019
Compiler

Compiled 549 382 to 213 825 computations (61.1% saved)

rewrite31.9s (11.9%)

Memory
1 030.1MiB live, 41 939.4MiB allocated; 7.7s collecting garbage
Stop Event
295×iter-limit
131×node-limit
Counts
32 763 → 61 255

eval30.7s (11.4%)

Memory
328.0MiB live, 51 173.8MiB allocated; 9.2s collecting garbage
Compiler

Compiled 28 776 034 to 510 759 computations (98.2% saved)

regimes27.6s (10.3%)

Memory
328.4MiB live, 47 558.7MiB allocated; 5.5s collecting garbage
Counts
10 976 → 493
Calls

160 calls:

671.0ms
s
594.0ms
maxCos
588.0ms
u1
581.0ms
(*.f32 uy #s(literal 2 binary32))
578.0ms
uy
Compiler

Compiled 27 185 to 20 257 computations (25.5% saved)

series20.7s (7.7%)

Memory
351.7MiB live, 34 187.0MiB allocated; 5.1s collecting garbage
Counts
5 700 → 27 063
Calls

1443 calls:

TimeVariablePointExpression
379.0ms
r
@0
((+ (* 3/4 (/ (/ (exp (/ (/ (neg r) 3) s)) (* (* 6 s) (PI))) r)) (* 1/4 (/ (exp (/ (neg r) s)) (* (* (* (PI) 2) s) r)))) 3/4 (/ (/ (exp (/ (/ (neg r) 3) s)) (* (* 6 s) (PI))) r) (/ (exp (/ (/ (neg r) 3) s)) (* (* 6 s) (PI))) (exp (/ (/ (neg r) 3) s)) (/ (/ (neg r) 3) s) (/ (neg r) 3) (neg r) r 3 s (* (* 6 s) (PI)) (* 6 s) 6 (PI) (* 1/4 (/ (exp (/ (neg r) s)) (* (* (* (PI) 2) s) r))) 1/4 (/ (exp (/ (neg r) s)) (* (* (* (PI) 2) s) r)) (exp (/ (neg r) s)) (/ (neg r) s) (* (* (* (PI) 2) s) r) (* (* (PI) 2) s) (* (PI) 2) 2 (+ (/ (* 1/4 (exp (/ (neg r) s))) (* (* (* 2 (PI)) s) r)) (/ (* 3/4 (exp (/ (neg r) (* 3 s)))) (* (* (* 6 (PI)) s) r))) (/ 1/4 (* s (* (PI) r))) (* s (* (PI) r)) (* (PI) r) (+ (/ (* 1/4 (exp (/ (neg r) s))) (* (* (* 2 (PI)) s) r)) (/ (* 3/4 (exp (/ (neg r) (* 3 s)))) (* (* (* 6 (PI)) s) r))) (/ (* 1/4 (exp (/ (neg r) s))) (* (* (* 2 (PI)) s) r)) (* 1/4 (exp (/ (neg r) s))) (* (* (* 2 (PI)) s) r) (* (* 2 (PI)) s) (* 2 (PI)) (/ (* 3/4 (exp (/ (neg r) (* 3 s)))) (* (* (* 6 (PI)) s) r)) (neg (/ (- (neg (/ (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) s)) (/ 1/8 (* (PI) r))) s)) (/ (- (neg (/ (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) s)) (/ 1/8 (* (PI) r))) s) (- (neg (/ (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) s)) (/ 1/8 (* (PI) r))) (neg (/ (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) s)) (/ (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) s) (- (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ 1/24 (PI))) (neg (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s)) (/ (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) s) (+ (* 1/1296 (/ (/ (* r r) s) (PI))) (* -1/144 (/ r (PI)))) 1/1296 (/ (/ (* r r) s) (PI)) (/ (* r r) s) (* r r) (* -1/144 (/ r (PI))) -1/144 (/ r (PI)) (/ 1/24 (PI)) 1/24 (/ 1/8 (* (PI) r)) 1/8 (+ (* 3/4 (/ (exp (/ (/ (neg r) 3) s)) (* (* (* (PI) 6) s) r))) (* 1/4 (/ (exp (/ (neg r) s)) (* (* (* (PI) 2) s) r)))) (/ (exp (/ (/ (neg r) 3) s)) (* (* (* (PI) 6) s) r)) (/ (- (+ (* 1/108 (/ r (* (* s s) (PI)))) (/ 1/6 (* (PI) r))) (/ 1/18 (* (PI) s))) s) (- (+ (* 1/108 (/ r (* (* s s) (PI)))) (/ 1/6 (* (PI) r))) (/ 1/18 (* (PI) s))) (* (/ r (* (* s s) (PI))) 1/108) (/ r (* (* s s) (PI))) (* (* s s) (PI)) (* s s) 1/108 (+ (* 3/4 (/ (exp (/ (/ (neg r) 3) s)) (* (* (* (PI) 6) s) r))) (* 1/4 (/ (exp (/ (neg r) s)) (* (* (* (PI) 2) s) r)))) (/ (exp (/ (/ (neg r) 3) s)) (* (* (* (PI) 6) s) r)) (exp (/ (/ (neg r) 3) s)) (/ (/ (neg r) 3) s) (* -1/3 (/ r s)) -1/3 (/ r s) (* (* (* (PI) 6) s) r) (* (* (PI) 6) s) (* (PI) 6))
204.0ms
s
@0
((* (neg (- (log (+ 1 (* (pow u 3) -64))) (log (+ 1 (+ (* (* u u) 16) (* -1 (* -4 u))))))) s) (neg (- (log (+ 1 (* (pow u 3) -64))) (log (+ 1 (+ (* (* u u) 16) (* -1 (* -4 u))))))) (- (log (+ 1 (* (pow u 3) -64))) (log (+ 1 (+ (* (* u u) 16) (* -1 (* -4 u)))))) (log (+ 1 (* (pow u 3) -64))) (* (pow u 3) -64) (pow u 3) u 3 -64 (log (+ 1 (+ (* (* u u) 16) (* -1 (* -4 u))))) (+ (* (* u u) 16) (* -1 (* -4 u))) (* u u) 16 (* -1 (* -4 u)) -1 (* -4 u) -4 s (* s (log (/ 1 (- 1 (* 4 u))))) (* (* (+ (* 8 u) 4) s) u) (* (+ (* 8 u) 4) s) (+ (* 8 u) 4) 8 4 (* s (log (/ 1 (- 1 (* 4 u))))) (+ (* (* 4 s) u) (* (* (* 8 s) u) u)) (* 4 s) (* (* (* 8 s) u) u) (* (* 8 s) u) (* 8 s) (* s (log (/ 1 (- 1 (* 4 u))))) (* (+ (* (+ (* (+ (* 64 (* u s)) (* 64/3 s)) u) (* 8 s)) u) (* 4 s)) u) (+ (* (+ (* (+ (* 64 (* u s)) (* 64/3 s)) u) (* 8 s)) u) (* 4 s)) (+ (* s 4) (* (* (+ (* (+ (* 64 u) 64/3) u) 8) u) s)) (* (* (+ (* (+ (* 64 u) 64/3) u) 8) u) s) (* (+ (* (+ (* 64 u) 64/3) u) 8) u) (+ (* (+ (* 64 u) 64/3) u) 8) (+ (* 64 u) 64/3) 64 64/3 (* (log (/ 1 (+ (* u -4) 1))) s) (log (/ 1 (+ (* u -4) 1))) (/ 1 (+ (* u -4) 1)) 1 (+ (* u -4) 1))
181.0ms
s
@-inf
((* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* (* (neg (log (+ 1 (* -4/3 (- u 1/4))))) s) 3) (* (neg (log (+ 1 (* -4/3 (- u 1/4))))) s) (neg (log (+ 1 (* -4/3 (- u 1/4))))) (log (+ 1 (* -4/3 (- u 1/4)))) (* -4/3 (- u 1/4)) -4/3 (- u 1/4) u 1/4 s 3 (* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* (* (log 3/4) s) 3) (* (log 3/4) s) (log 3/4) 3/4 (* (* 3 s) (log (/ 1 (- 1 (/ (- u 1/4) 3/4))))) (* 3 (+ (* u s) (* (log 3/4) s))) (+ (* u s) (* (log 3/4) s)) (* (* s 3) (neg (log (- 1 (/ (- u 1/4) 3/4))))) (* s 3) (neg (log (- 1 (/ (- u 1/4) 3/4)))) (log (- 1 (/ (- u 1/4) 3/4))) (- 1 (/ (- u 1/4) 3/4)) 1 (/ (- u 1/4) 3/4) (* (* 3 s) (log (/ 1 (- 1 (/ (- (* 3/4 u) 3/16) 9/16))))) (* 3 s) (log (/ 1 (- 1 (/ (- (* 3/4 u) 3/16) 9/16)))) (/ 1 (- 1 (/ (- (* 3/4 u) 3/16) 9/16))) (- 1 (/ (- (* 3/4 u) 3/16) 9/16)) (/ (- (* 3/4 u) 3/16) 9/16) (- (* 3/4 u) 3/16) (* 3/4 u) 3/16 9/16)
169.0ms
w
@-inf
((log2 (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))))) (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))))) (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (pow (* (floor h) dX.v) 2) (* (floor h) dX.v) (floor h) h dX.v 2 (pow (* (floor w) dX.u) 2) (* (floor w) dX.u) (floor w) w dX.u (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)) (pow (* (floor w) dY.u) 2) (* (floor w) dY.u) dY.u (fabs (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)))) (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))) (* (neg dX.v) (* (* dY.u (floor h)) (floor w))) (neg dX.v) (* (* dY.u (floor h)) (floor w)) (* dY.u (floor h)) (floor maxAniso) maxAniso (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)) (pow (* (floor h) dY.v) 2) (* (floor h) dY.v) dY.v (/ (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))) (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w)) (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (- (* dY.u dX.v) (* dY.v dX.u)) (* dY.u dX.v) (* dY.v dX.u) (log2 (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))))) (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))))) (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))) (* (floor h) (floor w)) (/ (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))) (log2 (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))))) (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u)))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))))) (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (floor maxAniso)) (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (floor h) (floor w)) (- (* dY.u dX.v) (* dY.v dX.u))))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (log2 (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w)))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))))))) (if (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w)))) (floor maxAniso)) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (/ (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w))) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))))) (> (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w)))) (floor maxAniso)) (/ (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (fabs (* (* (- (* dY.u dX.v) (* dY.v dX.u)) (floor h)) (floor w)))) (/ (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (floor maxAniso)) (sqrt (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2)))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (log2 (if (> (/ (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))))) (floor maxAniso)) (/ (exp (* (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) 1/2)) (floor maxAniso)) (/ (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)))))))) (if (> (/ (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))))) (floor maxAniso)) (/ (exp (* (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) 1/2)) (floor maxAniso)) (/ (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 (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))))) (floor maxAniso)) (/ (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))))) (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 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)) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.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)))) (- (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u))) (* (* (floor w) dX.u) (* (floor h) dY.v)) (* (* (floor h) dX.v) (* (floor w) dY.u)) (/ (exp (* (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) 1/2)) (floor maxAniso)) (exp (* (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) 1/2)) (* (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) 1/2) (log (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)))) (fmax (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2))) (+ (pow (* (floor h) dY.v) 2) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2)) (pow (exp (* (log (* (floor w) dY.u)) 1)) 2) (exp (* (log (* (floor w) dY.u)) 1)) (* (log (* (floor w) dY.u)) 1) (log (* (floor w) dY.u)) 1 1/2 (/ (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)))))) (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))))))
166.0ms
x
@inf
((* (- (log (+ 1 (pow (* (- (exp x) 1) y) 3))) (log (+ 1 (- (pow (* (- (exp x) 1) y) 2) (* 1 (* (- (exp x) 1) y)))))) c) (- (log (+ 1 (pow (* (- (exp x) 1) y) 3))) (log (+ 1 (- (pow (* (- (exp x) 1) y) 2) (* 1 (* (- (exp x) 1) y)))))) (log (+ 1 (pow (* (- (exp x) 1) y) 3))) (pow (* (- (exp x) 1) y) 3) (* (- (exp x) 1) y) (- (exp x) 1) x y 3 (log (+ 1 (- (pow (* (- (exp x) 1) y) 2) (* 1 (* (- (exp x) 1) y))))) (- (pow (* (- (exp x) 1) y) 2) (* 1 (* (- (exp x) 1) y))) (pow (* (- (exp x) 1) y) 2) 2 (* 1 (* (- (exp x) 1) y)) 1 c (* (log (+ 1 (* (- (pow (E) x) 1) y))) c) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* (log (+ 1 (* (- (pow (E) x) 1) y))) c) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (* (log (+ 1 (* (- (pow (E) x) 1) y))) c) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (- (pow (E) x) 1) y) (* (+ (* (* y x) 1/2) y) x) (+ (* (* y x) 1/2) y) 1/2 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* (+ (* (+ (* (* 1/2 y) 1) (* (* 1/6 x) (* y 1))) x) (* y 1)) x) 1) (+ (* (+ (* (* 1/2 y) 1) (* (* 1/6 x) (* y 1))) x) (* y 1)) (* (* x x) (+ (* (/ y x) 1/2) (* 1/6 y))) (* x x) (+ (* (/ y x) 1/2) (* 1/6 y)) (/ y x) (* 1/6 y) 1/6)

analyze12.5s (4.7%)

Memory
-87.7MiB live, 18 693.4MiB allocated; 5.0s collecting garbage
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 113 computations (58% saved)

derivations11.1s (4.1%)

Memory
132.1MiB live, 12 867.3MiB allocated; 1.4s collecting garbage
Stop Event
32×fuel
done
Compiler

Compiled 29 668 to 3 986 computations (86.6% saved)

preprocess11.0s (4.1%)

Memory
53.1MiB live, 13 918.4MiB allocated; 4.2s collecting garbage
Stop Event
66×iter-limit
65×node-limit
saturated
Compiler

Compiled 178 156 to 54 105 computations (69.6% saved)

explain9.4s (3.5%)

Memory
-158.9MiB live, 15 443.2MiB allocated; 3.0s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f32#fsensitivity99679
-.f32#fcancellation40218
sqrt.f32#foflow-rescue3380
sqrt.f64#foflow-rescue3040
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))sensitivity2030
cos.f32#fsensitivity19520
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation18611
-.f64#fcancellation1531
/.f32#fo/n1260
exp.f32#fsensitivity4021
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-rescue200
(*.f32 sinTheta_O sinTheta_O)underflow294
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow20
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow147
(*.f32 eta eta)underflow20
/.f32#fu/n190
*.f64(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))n*u110
/.f32#fo/o100
sqrt.f64#fuflow-rescue60
/.f32#fn/o30
pow.f64(pow.f64 (E.f64) x)sensitivity20
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 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*o10
Confusion
Predicted +Predicted -
+213656
-4665790
Precision
0.8209069946195234
Recall
0.9744525547445255
Confusion?
Predicted +Predicted MaybePredicted -
+21363125
-4661075683
Precision?
0.7908759124087591
Recall?
0.988594890510949
Freqs
test
numberfreq
05846
12199
2392
311
Total Confusion?
Predicted +Predicted MaybePredicted -
+2501
-412
Precision?
0.8333333333333334
Recall?
0.9615384615384616
Samples
2.1s14 726×0valid
475.0ms2 016×1valid
84.0ms154×2valid
Compiler

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

Precisions
Click to see histograms. Total time spent on operations: 1.7s
ival-mult!: 440.0ms (26.5% of total)
ival-div!: 226.0ms (13.6% of total)
ival-sqrt: 210.0ms (12.6% of total)
ival-log: 92.0ms (5.5% of total)
ival-exp: 88.0ms (5.3% of total)
ival-cos: 67.0ms (4% of total)
ival-fabs: 61.0ms (3.7% of total)
adjust: 54.0ms (3.3% of total)
ival-add!: 54.0ms (3.3% of total)
ival-sub!: 54.0ms (3.3% of total)
ival-floor: 51.0ms (3.1% of total)
ival-sin: 43.0ms (2.6% of total)
ival-sinu: 35.0ms (2.1% of total)
ival-neg: 30.0ms (1.8% of total)
ival-pow2: 28.0ms (1.7% of total)
ival-cosu: 24.0ms (1.4% of total)
ival-fmax: 23.0ms (1.4% of total)
ival-tan: 20.0ms (1.2% of total)
ival-if: 17.0ms (1% of total)
ival-log2: 14.0ms (0.8% of total)
ival-log1p: 7.0ms (0.4% of total)
ival-asin: 6.0ms (0.4% of total)
ival-atan: 6.0ms (0.4% of total)
ival-sinh: 6.0ms (0.4% of total)
ival->=: 4.0ms (0.2% of total)
ival->: 3.0ms (0.2% of total)
ival-<: 1.0ms (0.1% of total)
ival-pi: 0.0ms (0% of total)

bsearch524.0ms (0.2%)

Memory
-53.3MiB live, 911.7MiB allocated; 142ms collecting garbage
Algorithm
79×binary-search
52×left-value
Stop Event
79×narrow-enough
Samples
98.0ms518×1valid
86.0ms1 160×0valid
62.0ms226×2valid
1.0ms15×0invalid
Compiler

Compiled 14 942 to 11 341 computations (24.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 173.0ms
ival-pow2: 33.0ms (19.1% of total)
ival-exp: 29.0ms (16.7% of total)
adjust: 26.0ms (15% of total)
ival-mult!: 25.0ms (14.4% of total)
ival-sqrt: 15.0ms (8.7% of total)
ival-fabs: 14.0ms (8.1% of total)
ival-add!: 13.0ms (7.5% of total)
ival-sub!: 10.0ms (5.8% of total)
ival-log1p: 8.0ms (4.6% of total)

start4.0ms (0%)

Memory
9.8MiB live, 9.7MiB allocated; 0ms collecting garbage

end0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...