Herbie run

Date:Thursday, February 20th, 2025
Commit:87019920 on main
Seed:2025051
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:3 724 359.4 MB

Time bar (total: 53.4min)

sample20.8min (39%)

Memory
17 569.6MiB live, 1 405 100.1MiB allocated; 7.0min collecting garbage
Samples
7.6min3 947 307×0valid
3.7min51 282×5exit
2.5min440 255×1valid
1.2min139 643×2valid
47.6s320 205×0invalid
15.0s14 640×3valid
8.6s28 212×1invalid
7.1s49 695×0exit
1.1s2 435×2invalid
260.0ms41×4valid
107.0ms4exit
22.0ms33×1exit
3.0ms3exit
2.0ms2exit
Precisions
Click to see histograms. Total time spent on operations: 12.3min
ival-mult: 2.3min (18.4% of total)
ival-pow: 1.4min (11.6% of total)
ival-div: 1.0min (8.4% of total)
adjust: 59.5s (8.1% of total)
ival-add: 54.3s (7.4% of total)
ival-sub: 52.5s (7.1% of total)
const: 45.0s (6.1% of total)
ival-log: 36.5s (4.9% of total)
ival-exp: 36.2s (4.9% of total)
ival-cos: 26.1s (3.5% of total)
ival-sin: 24.6s (3.3% of total)
ival-pow2: 21.2s (2.9% of total)
ival-sqrt: 21.2s (2.9% of total)
ival-tan: 15.7s (2.1% of total)
ival-sinu: 7.0s (0.9% of total)
ival-neg: 6.9s (0.9% of total)
ival-cosu: 6.2s (0.8% of total)
ival-fabs: 4.3s (0.6% of total)
ival-hypot: 3.8s (0.5% of total)
exact: 3.4s (0.5% of total)
ival-fmax: 3.1s (0.4% of total)
ival-fmin: 2.8s (0.4% of total)
ival-log1p: 2.7s (0.4% of total)
ival-expm1: 2.5s (0.3% of total)
ival-e: 2.4s (0.3% of total)
ival-asin: 1.8s (0.2% of total)
ival-acos: 1.7s (0.2% of total)
ival-atan2: 1.7s (0.2% of total)
ival-assert: 1.6s (0.2% of total)
ival-sinh: 1.5s (0.2% of total)
ival-pi: 1.5s (0.2% of total)
ival-<=: 1.0s (0.1% of total)
ival-atan: 1.0s (0.1% of total)
ival-fmod: 872.0ms (0.1% of total)
ival-and: 826.0ms (0.1% of total)
ival-floor: 763.0ms (0.1% of total)
ival-<: 616.0ms (0.1% of total)
ival-cbrt: 586.0ms (0.1% of total)
ival-cosh: 327.0ms (0% of total)
ival-asinh: 300.0ms (0% of total)
ival-acosh: 282.0ms (0% of total)
ival-if: 280.0ms (0% of total)
ival-atanh: 256.0ms (0% of total)
ival-log2: 243.0ms (0% of total)
ival-tanu: 177.0ms (0% of total)
ival-tanh: 135.0ms (0% of total)
ival->=: 53.0ms (0% of total)
ival->: 51.0ms (0% of total)
ival-or: 18.0ms (0% of total)
ival-==: 10.0ms (0% of total)
ival-true: 10.0ms (0% of total)
Bogosity

rewrite7.2min (13.6%)

Memory
7 190.2MiB live, 446 688.0MiB allocated; 2.2min collecting garbage
Stop Event
4 640×iter limit
1 813×node limit
118×unsound
35×saturated
Counts
334 320 → 601 021

explain4.0min (7.5%)

Memory
-472.8MiB live, 335 968.8MiB allocated; 1.0min collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation906351
sqrt.f64#foflow-rescue82030
cos.f64#fsensitivity37885
log.f64#fsensitivity368710
+.f64#fcancellation3054108
sin.f64#fsensitivity24311
/.f64#fo/n20410
/.f64#fo/o18360
-.f64#fnan-rescue14750
*.f64#fn*o11540
log.f32#fsensitivity114083
/.f64#fu/u9820
/.f64#fn/o9700
sqrt.f64#fuflow-rescue8710
+.f64#fnan-rescue8420
/.f64#fu/n6710
sqrt.f32#foflow-rescue5390
acos.f64#fsensitivity5303
*.f64#fn*u4570
pow.f64#fsensitivity43143
tan.f64#fsensitivity3940
-.f32#fcancellation38526
/.f64#fn/u3560
-.f64(-.f64 (*.f64 #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64) t) #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64))oflow-left2240
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)))))))sensitivity19115
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation19015
cos.f64#foflow-rescue1850
*.f64#fu*o1830
exp.f64#fsensitivity18141
pow.f64#foflow-rescue1570
*.f64#fo*u1400
asin.f64(asin.f64 (sqrt.f64 (/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 Om Omc) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 (/.f64 t l) #s(literal 2 binary64)))))))sensitivity1321
/.f32#fo/n1280
cbrt.f64#foflow-rescue1100
log.f64#foflow-rescue930
pow.f64#fuflow-rescue750
log.f64#fuflow-rescue690
cbrt.f64#fuflow-rescue530
exp.f32#fsensitivity5014
sin.f64#foflow-rescue320
tan.f64(tan.f64 (/.f64 x (*.f64 y #s(literal 2 binary64))))oflow-rescue290
(/.f64 x (*.f64 y #s(literal 2 binary64)))overflow29
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-rescue210
(*.f32 sinTheta_O sinTheta_O)underflow312
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow21
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow156
(*.f32 eta eta)underflow21
/.f32#fu/n210
/.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))overflow10
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))overflow10
/.f32#fo/o60
*.f32(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*u40
log.f32#foflow-rescue30
Confusion
Predicted +Predicted -
+31420900
-6378101846
Precision
0.8312609132758347
Recall
0.9721534653465347
Confusion?
Predicted +Predicted MaybePredicted -
+31420236664
-6378417101429
Precision?
0.8232815791526878
Recall?
0.9794554455445544
Freqs
test
numberfreq
0102746
131387
24924
3644
4341
5231
674
760
86
96
1643
1751
2131
Total Confusion?
Predicted +Predicted MaybePredicted -
+34323
-151185
Precision?
0.9556786703601108
Recall?
0.9913793103448276
Samples
28.4s236 227×0valid
12.7s32 168×1valid
8.4s11 342×2valid
1.5s144×5exit
1.2s1 180×3valid
239.0ms28×4valid
Compiler

Compiled 9 324 519 to 30 106 computations (99.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 36.3s
ival-mult: 7.2s (19.7% of total)
adjust: 3.3s (9.2% of total)
ival-div: 3.0s (8.3% of total)
ival-add: 3.0s (8.3% of total)
ival-sin: 2.9s (8.1% of total)
ival-sub: 2.8s (7.9% of total)
ival-cos: 2.2s (6.2% of total)
const: 2.0s (5.4% of total)
ival-log: 1.4s (3.8% of total)
ival-exp: 955.0ms (2.6% of total)
ival-sqrt: 860.0ms (2.4% of total)
ival-tan: 840.0ms (2.3% of total)
ival-pow2: 815.0ms (2.2% of total)
ival-fmax: 769.0ms (2.1% of total)
ival-pow: 682.0ms (1.9% of total)
ival-cosu: 453.0ms (1.2% of total)
ival-sinu: 409.0ms (1.1% of total)
ival-neg: 330.0ms (0.9% of total)
ival-fmin: 256.0ms (0.7% of total)
ival-true: 241.0ms (0.7% of total)
ival-hypot: 232.0ms (0.6% of total)
exact: 184.0ms (0.5% of total)
ival-fabs: 157.0ms (0.4% of total)
ival-log1p: 154.0ms (0.4% of total)
ival-asin: 131.0ms (0.4% of total)
ival-acos: 129.0ms (0.4% of total)
ival-assert: 119.0ms (0.3% of total)
ival-atan2: 114.0ms (0.3% of total)
ival-pi: 103.0ms (0.3% of total)
ival-fmod: 70.0ms (0.2% of total)
ival-atan: 64.0ms (0.2% of total)
ival-sinh: 61.0ms (0.2% of total)
ival-if: 45.0ms (0.1% of total)
ival-cbrt: 41.0ms (0.1% of total)
ival-floor: 40.0ms (0.1% of total)
ival-e: 26.0ms (0.1% of total)
ival-expm1: 26.0ms (0.1% of total)
ival-cosh: 17.0ms (0% of total)
ival-copysign: 12.0ms (0% of total)
ival-log2: 12.0ms (0% of total)
ival-tanu: 11.0ms (0% of total)
ival-tanh: 7.0ms (0% of total)
ival->=: 6.0ms (0% of total)
ival->: 3.0ms (0% of total)
ival-<: 1.0ms (0% of total)

eval3.8min (7.1%)

Memory
647.7MiB live, 337 988.1MiB allocated; 1.2min collecting garbage
Compiler

Compiled 236 210 036 to 3 880 696 computations (98.4% saved)

prune3.6min (6.7%)

Memory
-1 508.4MiB live, 248 634.3MiB allocated; 35.3s collecting garbage
Counts
787 729 → 33 449
Compiler

Compiled 3 338 898 to 1 483 096 computations (55.6% saved)

regimes2.9min (5.5%)

Memory
1 795.3MiB live, 226 643.4MiB allocated; 48.6s collecting garbage
Counts
95 904 → 9 268
Calls

1 241 calls:

15.6s
x
9.8s
y
9.0s
z
5.4s
b
5.1s
a
Compiler

Compiled 124 212 to 128 126 computations (-3.2% saved)

series2.6min (4.9%)

Memory
632.5MiB live, 202 237.7MiB allocated; 47.1s collecting garbage
Counts
52 342 → 281 978
Calls

16293 calls:

TimeVariablePointExpression
2.9s
y
@-inf
((+ (* (neg (log y)) x) (* (log x) x)) (neg (log y)) (log y) y x (* (log x) x) (log x) (log (pow (/ x y) x)) (pow (/ x y) x) (/ x y) (+ (* (log (/ -1 y)) x) (* (log (neg x)) x)) (log (/ -1 y)) (/ -1 y) -1 (* (log (neg x)) x) (log (neg x)) (neg x) (/ (* (- (pow (log x) 2) (pow (log y) 2)) x) (log (* x y))) (* (- (pow (log x) 2) (pow (log y) 2)) x) (- (pow (log x) 2) (pow (log y) 2)) (pow (log x) 2) 2 (pow (log y) 2) (log (* x y)) (* x y) (* x (/ (+ (pow (log (neg x)) 3) (pow (log (/ -1 y)) 3)) (+ (* (log (neg x)) (log (* x y))) (pow (log (/ -1 y)) 2)))) (/ (+ (pow (log (neg x)) 3) (pow (log (/ -1 y)) 3)) (+ (* (log (neg x)) (log (* x y))) (pow (log (/ -1 y)) 2))) (+ (pow (log (neg x)) 3) (pow (log (/ -1 y)) 3)) (pow (log (neg x)) 3) 3 (pow (log (/ -1 y)) 3) (+ (* (log (neg x)) (log (* x y))) (pow (log (/ -1 y)) 2)) (pow (log (/ -1 y)) 2))
1.2s
t
@0
((fabs (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))))) (+ (* (* (cos (atan (* (/ (cos t) ew) (/ eh (sin t))))) ew) (sin t)) (* (* (cos t) eh) (tanh (asinh (* (/ (cos t) ew) (/ eh (sin t))))))) (* (cos (atan (* (/ (cos t) ew) (/ eh (sin t))))) ew) (cos (atan (* (/ (cos t) ew) (/ eh (sin t))))) (atan (* (/ (cos t) ew) (/ eh (sin t)))) (* (/ (cos t) ew) (/ eh (sin t))) (/ (cos t) ew) (cos t) t ew (/ eh (sin t)) eh (sin t) (* (* (cos t) eh) (tanh (asinh (* (/ (cos t) ew) (/ eh (sin t)))))) (* (cos t) eh) (tanh (asinh (* (/ (cos t) ew) (/ eh (sin t))))) (asinh (* (/ (cos t) ew) (/ eh (sin t)))) (fabs (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))))) (* (tanh (asinh (* (/ (cos t) ew) (/ eh (sin t))))) eh) (fabs (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))))) (* (* (cos (atan (* (/ (cos t) ew) (/ eh (sin t))))) ew) (sin t)) (fabs (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))))) (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t)))) (atan (/ (/ eh ew) (tan t))) (/ (/ eh ew) (tan t)) (/ eh ew) (tan t) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))) (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))) (atan (/ (/ eh ew) (tan t))) (/ (/ eh ew) (tan t)) (tan t) (fabs (+ (* (* ew (sin t)) (/ 1 (sqrt (+ 1 (pow (/ (/ eh ew) (tan t)) 2))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t))))))) (+ (* (* ew (sin t)) (/ 1 (sqrt (+ 1 (pow (/ (/ eh ew) (tan t)) 2))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan t)))))) (* (* ew (sin t)) (/ 1 (sqrt (+ 1 (pow (/ (/ eh ew) (tan t)) 2))))) (/ 1 (sqrt (+ 1 (pow (/ (/ eh ew) (tan t)) 2)))) 1 (sqrt (+ 1 (pow (/ (/ eh ew) (tan t)) 2))) (+ 1 (pow (/ (/ eh ew) (tan t)) 2)) (pow (/ (/ eh ew) (tan t)) 2) 2)
1.1s
phi1
@inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))
837.0ms
dY.v
@0
((if (>= (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (+ (pow (* (floor h) dY.v) 2) (pow (* (floor w) dY.u) 2))) (* (/ dX.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (floor w)) (/ (* (floor w) dY.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)))))) (>= (+ (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 h) dY.v) 2) (* (floor h) dY.v) dY.v (pow (* (floor w) dY.u) 2) (* (floor w) dY.u) dY.u (* (/ dX.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (floor w)) (/ dX.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2)))) (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))) (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2)) (/ (* (floor w) dY.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))))) (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))) (if (>= (+ (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 w) 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))))) (* dY.u (/ (floor w) (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 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))) (+ (pow (* (floor h) dX.v) 2) (pow (* (floor w) dX.u) 2)) (/ (* (floor w) 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))))) (* dY.u (/ (floor w) (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2)))))) (/ (floor w) (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (if (>= (+ (* (* (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 (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))) -1/2) (* (floor w) dX.u)) (* (/ 1 (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) 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)))) (+ (* (* (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)) (* (pow (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))) -1/2) (* (floor w) dX.u)) (pow (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))) -1/2) -1/2 (* (/ 1 (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) dY.u)) (/ 1 (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)))))) 1 (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)))) (+ (* (* (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)) (if (>= (+ (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 w) 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))))) (* (/ dY.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (floor w))) (* (/ dY.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (floor w)) (/ dY.u (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (if (>= (+ (* (* (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)))) (* (/ 1 (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (* (floor w) dX.u)) (* (/ 1 (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) 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)))) (* (/ 1 (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (* (floor w) dX.u)) (/ 1 (sqrt (fmax (+ (pow (* (floor w) dX.u) 2) (pow (* (floor h) dX.v) 2)) (+ (pow (* (floor w) dY.u) 2) (pow (* (floor h) dY.v) 2))))) (* (/ 1 (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) dY.u)) (/ 1 (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))))) (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) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (exp (+ (* (log (floor h)) 2) (* (log dY.v) 2))) (+ (* (log (floor h)) 2) (* (log dY.v) 2)) (log (floor h)) (* (log dY.v) 2) (log dY.v))
716.0ms
re
@-inf
((/ (atan2 im re) (log 10)) (atan2 im re) im re (log 10) 10)

analyze2.3min (4.3%)

Memory
2 063.0MiB live, 162 319.4MiB allocated; 46.5s collecting garbage
Algorithm
554×search
random
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%84.7%15.3%0%0%0%0
39.5%33.4%51.2%15.3%0%0%0%1
45.4%38.1%45.8%15.3%0%0.8%0%2
53.9%44.1%37.8%15.3%0%2.8%0%3
60.6%49.1%31.9%15.3%0%3.7%0%4
66.9%53.9%26.6%15.3%0%4.2%0%5
70.9%56.8%23.3%15.3%0%4.6%0%6
74.9%59.5%20%15.3%0%5.2%0%7
76.9%60.9%18.3%15.3%0%5.6%0%8
79.5%62.7%16.1%15.3%0%5.9%0%9
81.1%63.7%14.8%15.3%0%6.2%0%10
83.4%65.4%13%15.3%0%6.3%0%11
84.5%66.1%12.1%15.3%0%6.5%0%12
Compiler

Compiled 60 013 to 16 997 computations (71.7% saved)

preprocess2.2min (4.2%)

Memory
4 753.8MiB live, 141 265.3MiB allocated; 30.1s collecting garbage
Stop Event
1 096×iter limit
806×node limit
294×saturated
Compiler

Compiled 809 747 to 154 405 computations (80.9% saved)

derivations2.2min (4.2%)

Memory
-96.2MiB live, 115 488.3MiB allocated; 25.4s collecting garbage
Stop Event
351×fuel
196×done
Compiler

Compiled 332 331 to 44 635 computations (86.6% saved)

bsearch1.2min (2.3%)

Memory
836.9MiB live, 74 164.0MiB allocated; 18.7s collecting garbage
Algorithm
2 967×binary-search
1 779×left-value
Stop Event
2 848×narrow-enough
117×predicate-same
predicate-failed
Samples
25.6s209 056×0valid
8.9s17 613×1valid
8.7s2 215×5exit
1.5s2 835×2valid
1.2s10 513×0invalid
506.0ms434×3valid
372.0ms46×4valid
20.0ms196×0exit
18.0ms73×1invalid
Compiler

Compiled 1 685 247 to 1 132 120 computations (32.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 36.6s
ival-mult: 7.9s (21.5% of total)
ival-pow: 7.8s (21.3% of total)
ival-sub: 3.2s (8.7% of total)
ival-sin: 2.6s (7.1% of total)
ival-div: 2.6s (7.1% of total)
ival-add: 2.4s (6.6% of total)
adjust: 2.4s (6.5% of total)
ival-cos: 2.0s (5.6% of total)
ival-exp: 898.0ms (2.5% of total)
const: 765.0ms (2.1% of total)
ival-pow2: 705.0ms (1.9% of total)
ival-log: 682.0ms (1.9% of total)
ival-sqrt: 402.0ms (1.1% of total)
ival-cosu: 293.0ms (0.8% of total)
ival-sinu: 270.0ms (0.7% of total)
ival-neg: 253.0ms (0.7% of total)
ival-hypot: 228.0ms (0.6% of total)
ival-true: 178.0ms (0.5% of total)
ival-atan2: 171.0ms (0.5% of total)
ival-tan: 171.0ms (0.5% of total)
exact: 128.0ms (0.3% of total)
ival-acos: 119.0ms (0.3% of total)
ival-assert: 98.0ms (0.3% of total)
ival-atan: 67.0ms (0.2% of total)
ival-sinh: 56.0ms (0.2% of total)
ival-fabs: 44.0ms (0.1% of total)
ival-fmax: 33.0ms (0.1% of total)
ival-fmod: 24.0ms (0.1% of total)
ival-pi: 21.0ms (0.1% of total)
ival-asin: 17.0ms (0% of total)
ival-e: 15.0ms (0% of total)
ival-if: 11.0ms (0% of total)
ival-tanu: 10.0ms (0% of total)
ival-tanh: 10.0ms (0% of total)
ival-expm1: 10.0ms (0% of total)
ival-log1p: 8.0ms (0% of total)
ival->=: 6.0ms (0% of total)
ival-fmin: 5.0ms (0% of total)
ival-cosh: 5.0ms (0% of total)
ival-cbrt: 3.0ms (0% of total)

simplify29.6s (0.9%)

Memory
-972.9MiB live, 27 675.5MiB allocated; 6.2s collecting garbage
Stop Event
444×node limit
103×saturated

start656.0ms (0%)

Memory
67.6MiB live, 178.3MiB allocated; 1.3s collecting garbage

end4.0ms (0%)

Memory
8.9MiB live, 8.2MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...