Herbie run

Date:Thursday, November 21st, 2024
Commit:d1b0bfd6 on main
Hostname:nightly with Racket 8.10
Seed:2024326
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: 7.2min)

sample1.4min (19%)

Memory
240.2MiB live, 101 537.8MiB allocated
Samples
55.4s262 437×0valid
2.2s7 706×1valid
2.2s11 448×0invalid
674.0ms2 304×2valid
266.0ms629×1invalid
259.0ms1 593×1exit
0.0ms3valid
Precisions
Click to see histograms. Total time spent on operations: 49.4s
ival-mult: 9.6s (19.5% of total)
const: 7.1s (14.4% of total)
ival-<=: 6.4s (12.9% of total)
ival-div: 4.5s (9.1% of total)
ival-sub: 2.3s (4.6% of total)
ival-add: 2.0s (4% of total)
ival-fabs: 1.8s (3.7% of total)
ival-log: 1.5s (3.1% of total)
ival-sqrt: 1.5s (3% of total)
ival-exp: 1.4s (2.7% of total)
ival-and: 1.3s (2.5% of total)
ival-sin: 1.0s (2.1% of total)
ival-pow: 820.0ms (1.7% of total)
ival-floor: 791.0ms (1.6% of total)
ival-neg: 784.0ms (1.6% of total)
ival-sinu: 677.0ms (1.4% of total)
exact: 480.0ms (1% of total)
adjust: 467.0ms (0.9% of total)
ival-cosu: 463.0ms (0.9% of total)
ival-pow2: 402.0ms (0.8% of total)
ival-pi: 400.0ms (0.8% of total)
ival-tan: 377.0ms (0.8% of total)
ival-cos: 376.0ms (0.8% of total)
ival-e: 340.0ms (0.7% of total)
ival-fmax: 339.0ms (0.7% of total)
ival->=: 321.0ms (0.6% of total)
ival-<: 293.0ms (0.6% of total)
ival-log2: 289.0ms (0.6% of total)
ival-if: 283.0ms (0.6% of total)
ival->: 206.0ms (0.4% of total)
ival-==: 199.0ms (0.4% of total)
ival-asin: 183.0ms (0.4% of total)
ival-log1p: 179.0ms (0.4% of total)
ival-atan: 144.0ms (0.3% of total)
ival-assert: 117.0ms (0.2% of total)
ival-sinh: 78.0ms (0.2% of total)
ival-true: 22.0ms (0% of total)
Bogosity

prune55.2s (12.7%)

Memory
-480.8MiB live, 44 415.8MiB allocated
Counts
153 738 → 7 094
Compiler

Compiled 1 528 898 to 433 761 computations (71.6% saved)

simplify48.9s (11.3%)

Memory
186.4MiB live, 53 775.7MiB allocated
Algorithm
297×egg-herbie
Stop Event
404×iter limit
261×node limit
28×saturated
unsound
Counts
15 687 → 15 604

eval47.6s (11%)

Memory
546.9MiB live, 67 967.0MiB allocated
Compiler

Compiled 47 640 034 to 669 055 computations (98.6% saved)

regimes42.8s (9.9%)

Memory
110.6MiB live, 57 350.1MiB allocated
Counts
19 737 → 443
Calls

160 calls:

1.8s
s
1.5s
u
1.1s
ux
923.0ms
dX.u
915.0ms
dY.v
Compiler

Compiled 29 514 to 16 818 computations (43% saved)

soundness37.2s (8.6%)

Memory
214.1MiB live, 26 353.8MiB allocated
Stop Event
280×iter limit
187×node limit
33×fuel
Compiler

Compiled 122 039 to 22 457 computations (81.6% saved)

rewrite29.1s (6.7%)

Memory
-82.4MiB live, 33 821.9MiB allocated
Stop Event
272×iter limit
126×node limit
unsound
Counts
2 586 → 73 744

localize26.9s (6.2%)

Memory
55.0MiB live, 39 254.2MiB allocated
Samples
12.4s26 397×0valid
3.0s2 865×1valid
2.3s3 630×0invalid
380.0ms310×2valid
235.0ms366×1exit
185.0ms108×5exit
66.0ms106×0exit
10.0ms10×3valid
Compiler

Compiled 141 126 to 6 768 computations (95.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0s
ival-mult: 4.2s (30.2% of total)
ival-div: 2.3s (16.1% of total)
ival-add: 1.1s (7.8% of total)
ival-sub: 911.0ms (6.5% of total)
ival-pow2: 641.0ms (4.6% of total)
ival-sqrt: 492.0ms (3.5% of total)
adjust: 490.0ms (3.5% of total)
ival-log: 468.0ms (3.3% of total)
ival-pow: 452.0ms (3.2% of total)
ival-sin: 351.0ms (2.5% of total)
const: 320.0ms (2.3% of total)
ival-exp: 258.0ms (1.8% of total)
ival-neg: 215.0ms (1.5% of total)
ival-cos: 202.0ms (1.4% of total)
ival-sinu: 195.0ms (1.4% of total)
ival-fmax: 168.0ms (1.2% of total)
ival-cosu: 126.0ms (0.9% of total)
ival-pi: 114.0ms (0.8% of total)
ival-log1p: 113.0ms (0.8% of total)
ival-floor: 111.0ms (0.8% of total)
ival-if: 100.0ms (0.7% of total)
ival-fabs: 81.0ms (0.6% of total)
ival-log2: 78.0ms (0.6% of total)
ival-tan: 75.0ms (0.5% of total)
exact: 70.0ms (0.5% of total)
ival-expm1: 59.0ms (0.4% of total)
ival-e: 43.0ms (0.3% of total)
ival-asin: 37.0ms (0.3% of total)
ival-atan: 36.0ms (0.3% of total)
ival-true: 30.0ms (0.2% of total)
ival-acos: 28.0ms (0.2% of total)
ival-sinh: 25.0ms (0.2% of total)
ival-assert: 20.0ms (0.1% of total)
ival-cosh: 18.0ms (0.1% of total)
ival-cbrt: 16.0ms (0.1% of total)
ival-hypot: 16.0ms (0.1% of total)
ival->: 15.0ms (0.1% of total)
ival-tanu: 13.0ms (0.1% of total)
ival->=: 12.0ms (0.1% of total)
ival-<: 6.0ms (0% of total)
ival-asinh: 3.0ms (0% of total)
ival-nan: 0.0ms (0% of total)

series24.1s (5.6%)

Memory
-49.7MiB live, 31 474.3MiB allocated
Counts
2 586 → 15 687
Calls

1452 calls:

TimeVariablePointExpression
2.6s
u1
@0
((* (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (+ (* (* 2 (PI)) u1) (* 1/2 (PI))) (* (/ 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) (+ (/ (* (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))) (/ 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 (/ (* (/ 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 (/ (* (/ 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 (+ (/ (* (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 (/ (+ (* (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphax) (* (* alphay alphay) (/ (pow (cosh (asinh (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) -2) alphax))) (* (* alphay alphay) alphax))) u0) (/ (+ (* (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphax) (* (* alphay alphay) (/ (pow (cosh (asinh (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) -2) alphax))) (* (* alphay alphay) alphax)) (+ (* 1/2 (PI)) (* u1 (* (PI) 2))) (+ 1 (/ (* (/ 1 (/ (+ (* (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphax) (* (* alphay alphay) (/ (pow (cosh (asinh (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) -2) alphax))) (* (* alphay alphay) alphax))) u0) (- 1 u0))) (* (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (sin (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))))))) (* (/ 1 (+ (/ (/ 1 (+ (pow (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)) 2) 1)) (* 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 (+ (/ (* (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 (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))))) (cos (atan (* (/ alphay alphax) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI))))))) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))) (tan (+ (* (* 2 (PI)) u1) (* 1/2 (PI)))) (+ (* (* 2 (PI)) u1) (* 1/2 (PI))) (+ (* 2 u1) 1/2) (* (/ 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) (cos (atan (/ (* (/ alphay alphax) (sin (* (PI) (+ (* 2 u1) 1/2)))) (cos (* (PI) (+ (* 2 u1) 1/2)))))) (cos (* (PI) (+ (* 2 u1) 1/2))) (+ (* (pow (sin (atan (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) 2) alphax) (* (* alphay alphay) (/ (pow (cosh (asinh (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) -2) alphax))) (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (cosh (asinh (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)))) (pow (* (tan (+ (* 1/2 (PI)) (* u1 (* (PI) 2)))) (/ alphay alphax)) 2))
414.0ms
dY.v
@inf
((* (* (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)) (pow (pow (fmax (+ (pow (* dX.u (floor w)) 2) (pow (* dX.v (floor h)) 2)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2))) 1/4) 2) (sqrt (fmax (+ (pow (* dX.u (floor w)) 2) (pow (* dX.v (floor h)) 2)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2)))) (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) (+ (* (* (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))))) (pow (fmax (+ (pow (* dX.u (floor w)) 2) (pow (* dX.v (floor h)) 2)) (+ (pow (* dY.u (floor w)) 2) (pow (* dY.v (floor h)) 2))) 1/4) (+ (* (* (pow (floor h) 2) dY.v) dY.v) (* (* (pow (floor w) 2) dY.u) dY.u)) (+ (* (* (pow (floor w) 2) dX.u) dX.u) (* (* (pow (floor h) 2) dX.v) dX.v)) (sqrt (fmax (+ (* (* (pow (floor w) 2) dX.u) dX.u) (* (* (pow (floor h) 2) dX.v) dX.v)) (+ (* (* (pow (floor h) 2) dY.v) dY.v) (* (* (pow (floor w) 2) dY.u) dY.u)))) (+ (* (pow (* 1 dX.v) 2) (pow (floor h) 2)) (pow (* dX.u (floor w)) 2)) (sqrt (fmax (+ (* (pow (* 1 dX.v) 2) (pow (floor h) 2)) (pow (* dX.u (floor w)) 2)) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (* dY.v (floor h)) dY.v) (floor h))))))
342.0ms
u
@inf
((+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))))) (+ (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u))))))) (+ 1 (* v (- (log (- (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 3) (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 3))) (log (+ (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u))))))))))) (* v (- (log (- (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 3) (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 3))) (log (+ (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))))))))) (+ 1 (* v (log (/ (- (* u u) (pow (* (exp (/ -2 v)) (- 1 u)) 2)) (- u (* (exp (/ -2 v)) (- 1 u))))))) (- (exp (/ 2 v)) 1) (+ 1 (* v (log (+ u (* (- 1 u) (exp (/ -2 v))))))) (- (* (* u v) (- (exp (/ 2 v)) 1)) 1) (* (* u v) (- (exp (/ 2 v)) 1)) (+ 1 (* v (log (+ u (* (- 1 u) (exp (/ -2 v))))))) (+ u (* (- 1 u) (exp (/ -2 v)))) (* v (log (+ u (* (- 1 u) (exp (/ -2 v)))))) (log (+ u (* (- 1 u) (exp (/ -2 v))))) (+ 1 (* v (log (+ u (* (- 1 u) (exp (/ -2 v))))))) (* v (log (+ u (* (- 1 u) (exp (/ -2 v)))))) (log (+ u (* (- 1 u) (exp (/ -2 v))))) (+ u (* (- 1 u) (exp (/ -2 v)))) (- (log (- (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 3) (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 3))) (log (+ (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u))))))))) (log (+ (pow (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (+ (pow (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))) 2) (* (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (/ (pow (* (exp (/ -2 v)) (- 1 u)) 2) (- u (* (exp (/ -2 v)) (- 1 u)))))))) (/ (* u u) (- u (* (exp (/ -2 v)) (- 1 u)))) (exp (/ 2 v)) (exp (/ -2 v)) (/ (- 2 (/ 2 v)) v) (- (exp (/ -2 v)) 1))
320.0ms
h
@-inf
((- (* (* (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)) (* (* (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)) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w))) (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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)) (/ (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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)))))) 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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w))))) (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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)) (/ (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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)))))))) (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))))) (< (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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)) (/ (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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)))))) 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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.u) (floor w)))) (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)) (/ (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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 (+ (* (* (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)))) (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))))) (* (* (* (floor w) (floor h)) (- (/ (* dY.v dX.u) dY.u) dX.v)) dY.u) (+ (* dY.u dX.v) (* (neg dY.v) dX.u)) (/ (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))) (fabs (* (+ (* dY.u dX.v) (* (neg dY.v) dX.u)) (* (floor w) (floor h))))) (/ (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))) (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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)))) (/ (- (* (* (* dX.u (floor w)) dY.v) (floor h)) (* (* (* dX.v (floor h)) dY.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))))) (pow (* dX.u (floor w)) 2) (- (* (* (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)))))))
313.0ms
y
@inf
((* (log (+ 1 (* y (- (exp x) 1)))) c) (log (+ 1 (* y (- (exp x) 1)))) (* y (- (exp x) 1)) (- (exp x) 1) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* c y) x) (* c y) (+ (* (* 1/2 x) (- y (* y y))) y) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* 1/2 x) (- y (* y y))) y) x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* c (- (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (log (+ 1 (* (* y (- (exp x) 1)) (+ (* y (- (exp x) 1)) -1)))))) (- (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (log (+ 1 (* (* y (- (exp x) 1)) (+ (* y (- (exp x) 1)) -1))))) (log (+ 1 (pow (* y (- (exp x) 1)) 3))) (pow (* y (- (exp x) 1)) 3) (log (+ 1 (* (* y (- (exp x) 1)) (+ (* y (- (exp x) 1)) -1)))))

analyze21.0s (4.8%)

Memory
316.2MiB live, 27 777.4MiB 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)

explain9.3s (2.1%)

Memory
-269.4MiB live, 12 991.6MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f32#fsensitivity105969
-.f32#fcancellation40230
sqrt.f32#foflow-rescue3280
sqrt.f64#foflow-rescue2880
cos.f32#fsensitivity2087
log.f64(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))sensitivity2000
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation19413
-.f64#fcancellation1850
/.f32#fo/n1240
exp.f32#fsensitivity2926
/.f32#fu/n270
*.f64(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))n*u150
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-rescue140
(*.f32 sinTheta_O sinTheta_O)underflow268
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow14
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow134
(*.f32 eta eta)underflow14
/.f32#fn/o100
sqrt.f64#fuflow-rescue100
/.f32#fo/o60
*.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 -
+218763
-4715727
Precision
0.8227990970654627
Recall
0.972
Confusion?
Predicted +Predicted MaybePredicted -
+21873330
-471995628
Precision?
0.7956989247311828
Recall?
0.9866666666666667
Freqs
test
numberfreq
05790
12220
2432
36
Total Confusion?
Predicted +Predicted MaybePredicted -
+2620
-212
Precision?
0.9032258064516129
Recall?
1.0
Samples
2.5s16 122×0valid
199.0ms650×1valid
43.0ms124×2valid
Compiler

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

Precisions
Click to see histograms. Total time spent on operations: 1.8s
ival-mult: 527.0ms (29% of total)
ival-div: 215.0ms (11.8% of total)
ival-add: 137.0ms (7.5% of total)
ival-sqrt: 128.0ms (7% of total)
ival-sub: 107.0ms (5.9% of total)
ival-log: 76.0ms (4.2% of total)
ival-tan: 67.0ms (3.7% of total)
ival-exp: 45.0ms (2.5% of total)
ival-pow: 45.0ms (2.5% of total)
ival-floor: 43.0ms (2.4% of total)
ival-sin: 43.0ms (2.4% of total)
ival-sinu: 42.0ms (2.3% of total)
ival-neg: 42.0ms (2.3% of total)
adjust: 30.0ms (1.6% of total)
ival-cos: 30.0ms (1.6% of total)
ival-pow2: 27.0ms (1.5% of total)
ival-cosu: 23.0ms (1.3% of total)
const: 22.0ms (1.2% of total)
ival-pi: 21.0ms (1.2% of total)
ival-fabs: 20.0ms (1.1% of total)
ival-e: 18.0ms (1% of total)
ival-fmax: 16.0ms (0.9% of total)
ival-true: 16.0ms (0.9% of total)
exact: 16.0ms (0.9% of total)
ival-log2: 13.0ms (0.7% of total)
ival-if: 13.0ms (0.7% of total)
ival-assert: 8.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)

preprocess8.9s (2%)

Memory
-137.2MiB live, 9 848.0MiB allocated
Algorithm
33×egg-herbie
Stop Event
66×iter limit
47×node limit
19×saturated
Compiler

Compiled 119 284 to 14 223 computations (88.1% saved)

bsearch810.0ms (0.2%)

Memory
142.4MiB live, 877.6MiB allocated
Algorithm
81×left-value
57×binary-search
Stop Event
54×narrow-enough
predicate-same
Samples
253.0ms660×1valid
42.0ms73×1invalid
16.0ms62×2valid
14.0ms157×0invalid
13.0ms158×0valid
Compiler

Compiled 11 835 to 5 236 computations (55.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 296.0ms
ival-sub: 89.0ms (30% of total)
ival-pow: 83.0ms (28% of total)
ival-e: 48.0ms (16.2% of total)
ival-mult: 23.0ms (7.8% of total)
adjust: 19.0ms (6.4% of total)
ival-log1p: 12.0ms (4.1% of total)
ival-pow2: 7.0ms (2.4% of total)
ival-sqrt: 5.0ms (1.7% of total)
ival-add: 4.0ms (1.4% of total)
ival-div: 2.0ms (0.7% of total)
ival-fabs: 2.0ms (0.7% of total)
ival-assert: 1.0ms (0.3% of total)
ival-true: 1.0ms (0.3% of total)
exact: 1.0ms (0.3% of total)

start3.0ms (0%)

Memory
5.5MiB live, 5.5MiB allocated

end0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated

Profiling

Loading profile data...