Herbie run

Date:Friday, January 10th, 2025
Commit:4dfe4069 on main
Seed:2025010
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
Memory:4 519 600.4 MB

Time bar (total: 1.2hr)

sample25.5min (35%)

Memory
18 341.4MiB live, 1 571 058.4MiB allocated; 8.1min collecting garbage
Samples
11.3min3 939 268×0valid
3.8min52 098×5exit
2.6min439 604×1valid
1.3min140 020×2valid
45.7s294 646×0invalid
13.9s14 556×3valid
8.7s28 034×1invalid
7.6s50 337×0exit
1.1s2 505×2invalid
503.0ms45×4valid
56.0ms49×1exit
Precisions
Click to see histograms. Total time spent on operations: 14.1min
ival-mult: 2.4min (16.8% of total)
ival-pow: 1.5min (10.6% of total)
const: 1.1min (8% of total)
ival-div: 1.1min (7.8% of total)
ival-add: 1.1min (7.5% of total)
ival-sub: 1.0min (7.3% of total)
adjust: 57.5s (6.8% of total)
ival-exp: 37.1s (4.4% of total)
ival-log: 35.7s (4.2% of total)
ival-cos: 30.1s (3.6% of total)
ival-sin: 23.9s (2.8% of total)
ival-pow2: 22.9s (2.7% of total)
ival-sqrt: 22.5s (2.7% of total)
ival-fmax: 18.4s (2.2% of total)
ival-tan: 17.0s (2% of total)
ival-<=: 13.9s (1.6% of total)
ival-neg: 10.5s (1.2% of total)
ival-fmin: 6.7s (0.8% of total)
ival-sinu: 6.4s (0.8% of total)
ival-cosu: 5.3s (0.6% of total)
ival-fabs: 5.1s (0.6% of total)
ival-hypot: 4.0s (0.5% of total)
exact: 3.9s (0.5% of total)
ival-e: 3.0s (0.3% of total)
ival-true: 2.9s (0.3% of total)
ival-<: 2.9s (0.3% of total)
ival-log1p: 2.7s (0.3% of total)
ival-and: 2.7s (0.3% of total)
ival-assert: 2.0s (0.2% of total)
ival-expm1: 2.0s (0.2% of total)
ival-acos: 2.0s (0.2% of total)
ival-pi: 2.0s (0.2% of total)
ival-asin: 1.7s (0.2% of total)
ival-sinh: 1.6s (0.2% of total)
ival-atan2: 1.6s (0.2% of total)
ival-floor: 1.4s (0.2% of total)
ival->: 1.2s (0.1% of total)
ival-atan: 1.2s (0.1% of total)
ival-fmod: 872.0ms (0.1% of total)
ival-cbrt: 582.0ms (0.1% of total)
ival-==: 554.0ms (0.1% of total)
ival-tanu: 430.0ms (0.1% of total)
ival-acosh: 417.0ms (0% of total)
ival->=: 392.0ms (0% of total)
ival-asinh: 366.0ms (0% of total)
ival-if: 348.0ms (0% of total)
ival-cosh: 261.0ms (0% of total)
ival-log2: 215.0ms (0% of total)
ival-atanh: 139.0ms (0% of total)
ival-tanh: 86.0ms (0% of total)
ival-or: 41.0ms (0% of total)
Bogosity

simplify12.2min (16.8%)

Memory
8 760.0MiB live, 721 472.2MiB allocated; 2.8min collecting garbage
Stop Event
6 014×iter limit
4 050×node limit
480×saturated
17×unsound
Counts
169 145 → 167 188

derivations6.5min (8.9%)

Memory
2 123.3MiB live, 293 597.1MiB allocated; 1.1min collecting garbage
Stop Event
4 259×iter limit
2 085×node limit
364×fuel
190×unsound
183×done
15×saturated
Compiler

Compiled 328 575 to 44 154 computations (86.6% saved)

localize6.4min (8.7%)

Memory
-309.7MiB live, 407 127.4MiB allocated; 1.6min collecting garbage
Samples
2.2min398 919×0valid
1.2min66 362×1valid
38.7s22 562×2valid
19.9s2 344×5exit
6.8s13 038×0invalid
6.0s2 645×3valid
813.0ms1 895×0exit
455.0ms10×4exit
315.0ms78×4valid
79.0ms48×1exit
46.0ms3exit
Compiler

Compiled 1 480 501 to 63 768 computations (95.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.5min
ival-mult: 50.0s (23.8% of total)
ival-div: 27.2s (13% of total)
adjust: 24.1s (11.5% of total)
ival-add: 19.1s (9.1% of total)
ival-sin: 13.5s (6.4% of total)
ival-sub: 13.1s (6.2% of total)
const: 9.5s (4.6% of total)
ival-cos: 9.4s (4.5% of total)
ival-pow: 7.9s (3.8% of total)
ival-log: 5.7s (2.7% of total)
ival-pow2: 4.6s (2.2% of total)
ival-sqrt: 4.2s (2% of total)
ival-tan: 4.1s (2% of total)
ival-exp: 3.2s (1.5% of total)
ival-neg: 2.6s (1.2% of total)
ival-fmax: 1.2s (0.6% of total)
ival-hypot: 1.0s (0.5% of total)
ival-sinu: 984.0ms (0.5% of total)
ival-cosu: 880.0ms (0.4% of total)
ival-log1p: 772.0ms (0.4% of total)
exact: 751.0ms (0.4% of total)
ival-atan2: 608.0ms (0.3% of total)
ival-acos: 508.0ms (0.2% of total)
ival-pi: 455.0ms (0.2% of total)
ival-cosh: 449.0ms (0.2% of total)
ival-true: 436.0ms (0.2% of total)
ival-fmin: 431.0ms (0.2% of total)
ival-asin: 378.0ms (0.2% of total)
ival-fabs: 376.0ms (0.2% of total)
ival-cbrt: 352.0ms (0.2% of total)
ival-sinh: 286.0ms (0.1% of total)
ival-atan: 282.0ms (0.1% of total)
ival-assert: 217.0ms (0.1% of total)
ival-expm1: 184.0ms (0.1% of total)
ival-if: 158.0ms (0.1% of total)
ival-fmod: 125.0ms (0.1% of total)
ival-log2: 104.0ms (0% of total)
ival-floor: 101.0ms (0% of total)
ival-copysign: 94.0ms (0% of total)
ival-asinh: 92.0ms (0% of total)
ival-tanu: 79.0ms (0% of total)
ival-e: 42.0ms (0% of total)
ival->=: 39.0ms (0% of total)
ival-tanh: 26.0ms (0% of total)
ival->: 18.0ms (0% of total)
ival-acosh: 15.0ms (0% of total)
ival-<: 5.0ms (0% of total)
ival-exp2: 4.0ms (0% of total)
ival-then: 0.0ms (0% of total)
ival-nan: 0.0ms (0% of total)

rewrite4.5min (6.2%)

Memory
-1 386.1MiB live, 262 823.5MiB allocated; 1.1min collecting garbage
Stop Event
5 846×iter limit
1 585×node limit
380×unsound
39×saturated
Counts
28 409 → 438 915

regimes3.0min (4.1%)

Memory
901.9MiB live, 223 616.5MiB allocated; 38.0s collecting garbage
Counts
91 944 → 8 849
Calls

1 238 calls:

13.0s
x
9.7s
y
8.0s
z
6.3s
t
5.4s
a
Compiler

Compiled 123 344 to 127 348 computations (-3.2% saved)

eval2.8min (3.8%)

Memory
1 244.5MiB live, 214 194.2MiB allocated; 43.3s collecting garbage
Compiler

Compiled 85 082 305 to 3 131 379 computations (96.3% saved)

explain2.6min (3.6%)

Memory
-2 526.6MiB live, 184 315.6MiB allocated; 42.0s collecting garbage
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64#fcancellation869550
sqrt.f64#foflow-rescue81280
cos.f64#fsensitivity372911
log.f64#fsensitivity36652
+.f64#fcancellation3101119
sin.f64#fsensitivity23827
/.f64#fo/n19450
/.f64#fo/o17770
-.f64#fnan-rescue15830
*.f64#fn*o11400
log.f32#fsensitivity111182
/.f64#fn/o9780
sqrt.f64#fuflow-rescue8720
+.f64#fnan-rescue8600
/.f64#fu/u7430
/.f64#fu/n7030
sqrt.f32#foflow-rescue5430
acos.f64#fsensitivity5312
*.f64#fn*u4970
tan.f64#fsensitivity4210
pow.f64#fsensitivity40447
-.f32#fcancellation38732
/.f64#fn/u3210
-.f64(-.f64 (*.f64 #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64) t) #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64))oflow-left2240
cos.f32#fsensitivity2087
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation20515
exp.f64#fsensitivity20033
*.f64#fu*o2000
cos.f64#foflow-rescue1830
pow.f64#foflow-rescue1630
*.f64#fo*u1480
asin.f64#fsensitivity1222
/.f32#fo/n1140
log.f64#foflow-rescue1000
cbrt.f64#foflow-rescue920
log.f64#fuflow-rescue800
pow.f64#fuflow-rescue760
cbrt.f64#fuflow-rescue540
exp.f32#fsensitivity3821
sin.f64#foflow-rescue320
tan.f64(tan.f64 (/.f64 x (*.f64 y #s(literal 2 binary64))))oflow-rescue280
(/.f64 x (*.f64 y #s(literal 2 binary64)))overflow28
/.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-rescue130
(*.f32 sinTheta_O sinTheta_O)underflow284
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow13
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow142
(*.f32 eta eta)underflow13
/.f32#fo/o80
/.f32(/.f32 (neg.f32 (log.f32 (-.f32 #s(literal 1 binary32) u0))) (+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay))))n/o40
(/.f32 sin2phi (*.f32 alphay alphay))overflow11
(+.f32 (/.f32 cos2phi (*.f32 alphax alphax)) (/.f32 sin2phi (*.f32 alphay alphay)))overflow11
log.f32#foflow-rescue30
sin.f32#fcancellation20
*.f32(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))n*u20
Confusion
Predicted +Predicted -
+31249915
-6327101797
Precision
0.8316212476048541
Recall
0.9715520457654521
Confusion?
Predicted +Predicted MaybePredicted -
+31249246669
-6327399101398
Precision?
0.8240234426100834
Recall?
0.9792003482153961
Freqs
test
numberfreq
0102712
131271
24958
3583
4311
5216
667
738
89
92
101
1636
1764
2120
Total Confusion?
Predicted +Predicted MaybePredicted -
+34311
-142187
Precision?
0.9555555555555556
Recall?
0.9971014492753624
Samples
29.2s235 882×0valid
12.5s32 362×1valid
7.7s10 958×2valid
1.8s166×5exit
1.3s1 198×3valid
74.0ms10×4valid
Compiler

Compiled 258 069 to 22 458 computations (91.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.4s
ival-mult: 6.8s (19.2% of total)
adjust: 3.8s (10.6% of total)
ival-add: 3.1s (8.9% of total)
ival-div: 3.1s (8.9% of total)
ival-sub: 2.9s (8.3% of total)
ival-cos: 2.3s (6.5% of total)
ival-sin: 2.2s (6.1% of total)
ival-log: 1.7s (4.7% of total)
const: 1.3s (3.7% of total)
ival-tan: 1.0s (2.9% of total)
ival-sqrt: 998.0ms (2.8% of total)
ival-exp: 946.0ms (2.7% of total)
ival-pow2: 730.0ms (2.1% of total)
ival-fmax: 694.0ms (2% of total)
ival-pow: 620.0ms (1.8% of total)
ival-sinu: 387.0ms (1.1% of total)
ival-neg: 368.0ms (1% of total)
ival-cosu: 363.0ms (1% of total)
ival-hypot: 308.0ms (0.9% of total)
ival-true: 239.0ms (0.7% of total)
ival-fmin: 235.0ms (0.7% of total)
exact: 184.0ms (0.5% of total)
ival-assert: 118.0ms (0.3% of total)
ival-asin: 103.0ms (0.3% of total)
ival-acos: 100.0ms (0.3% of total)
ival-atan2: 93.0ms (0.3% of total)
ival-fabs: 84.0ms (0.2% of total)
ival-log1p: 81.0ms (0.2% of total)
ival-pi: 76.0ms (0.2% of total)
ival-atan: 69.0ms (0.2% of total)
ival-sinh: 62.0ms (0.2% of total)
ival-if: 56.0ms (0.2% of total)
ival-e: 49.0ms (0.1% of total)
ival-fmod: 42.0ms (0.1% of total)
ival-floor: 40.0ms (0.1% of total)
ival-cbrt: 34.0ms (0.1% of total)
ival-expm1: 20.0ms (0.1% of total)
ival-log2: 14.0ms (0% of total)
ival-copysign: 13.0ms (0% of total)
ival-cosh: 12.0ms (0% of total)
ival-tanu: 11.0ms (0% of total)
ival->=: 7.0ms (0% of total)
ival-tanh: 6.0ms (0% of total)
ival->: 3.0ms (0% of total)
ival-<: 1.0ms (0% of total)

preprocess2.5min (3.5%)

Memory
4 988.8MiB live, 149 260.4MiB allocated; 38.5s collecting garbage
Stop Event
1 094×iter limit
802×node limit
296×saturated
Compiler

Compiled 782 975 to 151 090 computations (80.7% saved)

series2.2min (3%)

Memory
338.8MiB live, 158 135.6MiB allocated; 36.8s collecting garbage
Counts
28 409 → 169 145
Calls

16599 calls:

TimeVariablePointExpression
1.6s
t
@0
((+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan 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))))) (* 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)))))) (* (sin (atan (* (/ (cos t) ew) (/ eh (sin t))))) eh) (sin (atan (* (/ (cos t) ew) (/ eh (sin t))))) (fabs (/ (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (cosh (asinh (/ (/ eh (tan t)) ew))))) (/ (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (cosh (asinh (/ (/ eh (tan t)) ew)))) (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (sin t) (+ (* (* -1/5040 ew) (pow t 4)) (* ew (+ (* (* t t) 1/120) -1/6))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan 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))))) (+ (* ew (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (fabs (+ (* ew (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))))) (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))) (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (cos (atan (/ (/ eh ew) (tan t)))) (/ (/ eh ew) (tan t)) (/ (/ eh ew) t) (/ (/ eh ew) (tan t)) (* (/ (cos t) ew) (/ eh (sin t))) (/ eh (sin t)) (/ (cos t) ew) (asinh (/ (/ eh (tan t)) ew)) (cosh (asinh (/ (/ eh (tan t)) ew))) (/ (/ eh (tan t)) ew) (* ew (sin t)) (+ (* (pow t 3) (+ (* (* -1/5040 ew) (pow t 4)) (* ew (+ (* (* t t) 1/120) -1/6)))) (* t ew)) (cos (atan (/ (/ eh (tan t)) ew))) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))))
869.0ms
x
@0
((/ (/ 1 (* (neg x) x)) (* (neg x) x)) (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (* (/ 1 (fabs x)) (/ 1 (fabs x))) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (/ (/ 1 (* (neg x) x)) (* (neg x) x)) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 1 (sqrt (PI))) (exp (* (fabs x) (fabs x)))) (* (fabs x) (fabs x)) (/ (/ 15/8 (pow x 5)) (* (fabs x) x)) (* (* (/ 1 (sqrt (PI))) (exp (* (fabs x) (fabs x)))) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (* (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x)))))) (* (* (/ 1 (sqrt (PI))) (exp (* (fabs x) (fabs x)))) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (* (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x)))))) (/ 1 (sqrt (PI))) (* (* (/ 1 (sqrt (PI))) (exp (* (fabs x) (fabs x)))) (/ (+ (* (pow (/ (pow (fabs x) -3) (pow x 4)) 3) 3375/512) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 3)) (+ (* (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (- (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))))) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2)))) (- (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2) (* (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))))) (+ (pow (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) 2) (- (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2) (* (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1)))))) (/ 1 (* (neg x) x)) (sqrt (PI)) (/ 1 (* (* x x) (* x x))) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (* (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (/ 15/8 (pow x 5)) (/ 1/2 (* x x)) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (* (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (/ 1 (* (* x x) (* x x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (/ -3/4 (pow (fabs x) 5)) (/ (+ (* (pow (/ (pow (fabs x) -3) (pow x 4)) 3) 3375/512) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 3)) (+ (* (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (- (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))))) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2))) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 3) (/ (+ (* (pow (/ (pow (fabs x) -3) (pow x 4)) 3) 3375/512) (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 3)) (+ (pow (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) 2) (- (pow (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))) 2) (* (* (/ (pow (fabs x) -3) (pow x 4)) 15/8) (+ (* (pow (pow (fabs x) -1) 5) 3/4) (+ (* (pow (fabs x) -3) 1/2) (pow (fabs x) -1))))))))
773.0ms
ew
@0
((+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan 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))))) (* 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)))))) (* (sin (atan (* (/ (cos t) ew) (/ eh (sin t))))) eh) (sin (atan (* (/ (cos t) ew) (/ eh (sin t))))) (fabs (/ (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (cosh (asinh (/ (/ eh (tan t)) ew))))) (/ (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (cosh (asinh (/ (/ eh (tan t)) ew)))) (+ (* (sin t) ew) (* (/ (* (/ eh ew) eh) (tan t)) (cos t))) (sin t) (+ (* (* -1/5040 ew) (pow t 4)) (* ew (+ (* (* t t) 1/120) -1/6))) (+ (* (* ew (sin t)) (cos (atan (/ (/ eh ew) (tan t))))) (* (* eh (cos t)) (sin (atan (/ (/ eh ew) (tan 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))))) (+ (* ew (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (fabs (+ (* ew (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))))) (/ (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))) (* (pow (* (cos (atan (/ (/ eh (tan t)) ew))) (sin t)) 2) ew) (cos (atan (/ (/ eh ew) (tan t)))) (/ (/ eh ew) (tan t)) (/ (/ eh ew) t) (/ (/ eh ew) (tan t)) (* (/ (cos t) ew) (/ eh (sin t))) (/ eh (sin t)) (/ (cos t) ew) (asinh (/ (/ eh (tan t)) ew)) (cosh (asinh (/ (/ eh (tan t)) ew))) (/ (/ eh (tan t)) ew) (* ew (sin t)) (+ (* (pow t 3) (+ (* (* -1/5040 ew) (pow t 4)) (* ew (+ (* (* t t) 1/120) -1/6)))) (* t ew)) (cos (atan (/ (/ eh (tan t)) ew))) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew)))) (/ (neg (pow (* (tanh (asinh (/ (/ eh (tan t)) ew))) (* (cos t) eh)) 2)) (/ (+ (* (sin t) ew) (* (neg eh) (* (cos t) (/ (/ eh (tan t)) ew)))) (cosh (asinh (/ (/ eh (tan t)) ew))))))
751.0ms
dY.u
@-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)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (if (< (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)) (/ (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 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))))))) 1) (fmax 1 (* (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)) (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)))))) (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)) (/ (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 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)) (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)))) (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))))) (/ (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 h) dX.v) (* (floor h) dX.v)))
714.0ms
c0
@-inf
((* (/ c0 (* 2 w)) (+ (* (sqrt (+ (* (/ (* d c0) w) (/ d (* (* D D) h))) M)) (sqrt (- (* (/ (* d c0) w) (/ d (* (* D D) h))) M))) (* (/ (* d c0) w) (/ d (* D (* D h)))))) (/ c0 (* 2 w)) (* 2 w) (+ (* (sqrt (+ (* (/ (* d c0) w) (/ d (* (* D D) h))) M)) (sqrt (- (* (/ (* d c0) w) (/ d (* (* D D) h))) M))) (* (/ (* d c0) w) (/ d (* D (* D h))))) (/ 0 w) (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) (* (neg c0) (+ (* (/ (* (* D D) (* (* (* M M) h) w)) (* (* c0 c0) (* d d))) -1/2) 0)) (+ (* (/ (* (* D D) (* (* (* M M) h) w)) (* (* c0 c0) (* d d))) -1/2) 0) (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) (/ (+ (* (/ (* c0 c0) (* D D)) (/ (* d d) (* w w))) (* (/ (* (* (* h M) (* h M)) (* D D)) (* d d)) -1/4)) h) (+ (* (/ (* c0 c0) (* D D)) (/ (* d d) (* w w))) (* (/ (* (* (* h M) (* h M)) (* D D)) (* d d)) -1/4)) (/ (* c0 c0) (* D D)) (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (+ (/ (* c0 (* d d)) (* (* D (* h w)) D)) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M)))) (* (/ c0 (* 2 w)) (+ (/ (* c0 (* d d)) (* (* D (* h w)) D)) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))) (sqrt (- (* (/ (* d c0) w) (/ d (* (* D D) h))) M)) (sqrt (+ (* (/ (* d c0) w) (/ d (* (* D D) h))) M)) (* (* D D) h) (* (/ (* d c0) w) (/ d (* D (* D h)))) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M)))) (* (* c0 c0) (* d d)) (/ (* (* D D) (* (* (* M M) h) w)) (* (* c0 c0) (* d d))) (* (* D D) (* (* (* M M) h) w)) (/ (* d d) (* w w)) (/ (* (* (* h M) (* h M)) (* D D)) (* d d)) (* (* w h) (* D D)) (/ (* c0 (* d d)) (* (* D (* h w)) D)) (/ (* c0 (* d d)) (* (* w h) (* D D))) (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M)))

analyze1.8min (2.5%)

Memory
1 376.5MiB live, 126 712.7MiB allocated; 39.8s collecting garbage
Algorithm
554×search
random
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%84.7%15.3%0%0%0%0
40.6%34.4%50.3%15.3%0%0%0%1
46.5%39%44.9%15.3%0%0.8%0%2
55%45%36.9%15.3%0%2.8%0%3
61.7%50%31%15.3%0%3.7%0%4
67.9%54.6%25.9%15.3%0%4.2%0%5
71.7%57.5%22.6%15.3%0%4.6%0%6
75.7%60.2%19.3%15.3%0%5.2%0%7
77.6%61.4%17.7%15.3%0%5.6%0%8
80.2%63.2%15.6%15.3%0%5.9%0%9
81.7%64.2%14.3%15.3%0%6.2%0%10
83.9%65.8%12.6%15.3%0%6.3%0%11
85%66.5%11.7%15.3%0%6.5%0%12
Compiler

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

prune1.5min (2.1%)

Memory
-2 220.8MiB live, 128 606.8MiB allocated; 22.6s collecting garbage
Counts
695 971 → 33 701
Compiler

Compiled 3 497 309 to 1 508 113 computations (56.9% saved)

bsearch1.2min (1.7%)

Memory
365.6MiB live, 78 480.8MiB allocated; 19.8s collecting garbage
Algorithm
2 805×binary-search
1 681×left-value
Stop Event
2 724×narrow-enough
78×predicate-same
predicate-failed
Samples
31.9s206 119×0valid
7.2s15 589×1valid
4.5s2 495×5exit
1.4s9 490×0invalid
1.2s2 147×2valid
299.0ms198×3valid
26.0ms240×0exit
25.0ms97×1invalid
1.0ms2invalid
Compiler

Compiled 1 835 889 to 1 191 402 computations (35.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.1s
ival-mult: 10.2s (29.2% of total)
ival-sub: 4.2s (11.9% of total)
ival-pow: 3.0s (8.6% of total)
ival-add: 2.9s (8.3% of total)
adjust: 2.5s (7% of total)
ival-div: 2.4s (6.9% of total)
ival-cos: 2.2s (6.2% of total)
ival-sin: 1.7s (4.8% of total)
ival-pow2: 947.0ms (2.7% of total)
const: 821.0ms (2.3% of total)
ival-log: 706.0ms (2% of total)
ival-exp: 582.0ms (1.7% of total)
ival-sqrt: 455.0ms (1.3% of total)
ival-hypot: 300.0ms (0.9% of total)
ival-cosu: 292.0ms (0.8% of total)
ival-tan: 277.0ms (0.8% of total)
ival-sinu: 265.0ms (0.8% of total)
ival-neg: 251.0ms (0.7% of total)
ival-atan2: 243.0ms (0.7% of total)
ival-true: 174.0ms (0.5% of total)
exact: 114.0ms (0.3% of total)
ival-atan: 102.0ms (0.3% of total)
ival-assert: 97.0ms (0.3% of total)
ival-acos: 95.0ms (0.3% of total)
ival-fabs: 75.0ms (0.2% of total)
ival-e: 70.0ms (0.2% of total)
ival-tanh: 23.0ms (0.1% of total)
ival-log1p: 19.0ms (0.1% of total)
ival-fmax: 14.0ms (0% of total)
ival-tanu: 13.0ms (0% of total)
ival-cosh: 13.0ms (0% of total)
ival-sinh: 12.0ms (0% of total)
ival-pi: 11.0ms (0% of total)
ival-expm1: 7.0ms (0% of total)
ival-fmod: 6.0ms (0% of total)
ival-if: 4.0ms (0% of total)
ival->=: 3.0ms (0% of total)
ival-asin: 3.0ms (0% of total)
ival-copysign: 1.0ms (0% of total)

start765.0ms (0%)

Memory
-124.3MiB live, 190.3MiB allocated; 1.4s collecting garbage

end4.0ms (0%)

Memory
9.6MiB live, 9.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...