Details

Time bar (total: 13.1s)

analyze1.1s (8.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
25%74.9%0.1%7
25%74.9%0.1%8
25%74.9%0.1%9
25%64%11.1%10
31.2%54.6%14.2%11
39%44.1%16.9%12
39%41.5%19.5%13
42.9%37%20.1%14
Compiler

Compiled 23 to 16 computations (30.4% saved)

sample4.7s (35.9%)

Symmetry

(sort a1 a2)

Results
1.3s1857×body1024valid
1.2s1591×body1024invalid
877.0ms4997×body128valid
462.0ms952×body512valid
411.0ms865×body512invalid
161.0ms442×body256valid
129.0ms406×body256invalid
119.0ms667×body128invalid
8.0msbody2048valid
Compiler

Compiled 68 to 47 computations (30.9% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
32×fma-def_binary64
23×*-commutative_binary64
20×associate-/l*_binary64
11×associate-/r/_binary64
associate-*r/_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01320
12718
25318
37618
410318
511718
613218
713418
813618
913618

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.4b
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))
Compiler

Compiled 108 to 70 computations (35.2% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a1 a1 (*.f64 a2 a2))
0.2b
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))
0.4b
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))

series91.0ms (0.7%)

Counts
3 → 84
Calls

3 calls:

64.0ms
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))
20.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))
7.0ms
(fma.f64 a1 a1 (*.f64 a2 a2))

rewrite23.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
40×add-sqr-sqrt_binary64
38×times-frac_binary64
32×*-un-lft-identity_binary64
32×add-cube-cbrt_binary64
22×associate-*r*_binary64
Counts
3 → 95
Calls

3 calls:

9.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))
7.0ms
(*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))
0.0ms
(fma.f64 a1 a1 (*.f64 a2 a2))

simplify159.0ms (1.2%)

Algorithm
egg-herbie
Rules
456×associate-*l*_binary64
410×associate-*r*_binary64
396×fma-neg_binary64
332×associate-/l*_binary64
299×sub-neg_binary64
Counts
179 → 174
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01743607
13683275
212963231
343703231
451093231

prune189.0ms (1.4%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1677174
Fresh101
Picked101
Done000
Total1697176
Error
0b
Counts
176 → 7
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
0.4b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
1.2b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))))
0.7b
(*.f64 (cos.f64 th) (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 2))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
0.5b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (sqrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 (sqrt.f64 2))))
0.6b
(*.f64 (cos.f64 th) (/.f64 1 (/.f64 (sqrt.f64 2) (fma.f64 a1 a1 (*.f64 a2 a2)))))
Compiler

Compiled 4135 to 1931 computations (53.3% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a1 a1 (*.f64 a2 a2))
0.2b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
0.2b
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))
0.3b
(/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))

series381.0ms (2.9%)

Counts
3 → 84
Calls

3 calls:

307.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))
53.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
21.0ms
(/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))

rewrite63.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
195×times-frac_binary64
110×add-sqr-sqrt_binary64
94×cbrt-prod_binary64
90×*-un-lft-identity_binary64
90×add-cube-cbrt_binary64
Counts
3 → 218
Calls

3 calls:

21.0ms
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
8.0ms
(/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2)))
6.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))

simplify254.0ms (1.9%)

Algorithm
egg-herbie
Rules
846×fma-neg_binary64
500×associate-/r/_binary64
260×fma-def_binary64
191×associate-/l*_binary64
181×associate-/l/_binary64
Counts
302 → 365
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03099806
16978974
225818924
345838924
453538924

prune509.0ms (3.9%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New3871388
Fresh156
Picked011
Done000
Total3887395
Error
0b
Counts
395 → 7
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
0.4b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
1.2b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))))
0.7b
(*.f64 (cos.f64 th) (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 2))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
0.5b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (sqrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 (sqrt.f64 2))))
0.6b
(*.f64 (cos.f64 th) (/.f64 1 (/.f64 (sqrt.f64 2) (fma.f64 a2 a2 (*.f64 a1 a1)))))
Compiler

Compiled 13365 to 8433 computations (36.9% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))))
0.2b
(/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
0.3b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
7.6b
(sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))

series632.0ms (4.8%)

Counts
4 → 120
Calls

4 calls:

380.0ms
(*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))))
195.0ms
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
43.0ms
(/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
13.0ms
(sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))

rewrite60.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
112×times-frac_binary64
99×sqrt-prod_binary64
91×add-sqr-sqrt_binary64
86×*-un-lft-identity_binary64
86×add-cube-cbrt_binary64
Counts
4 → 219
Calls

4 calls:

17.0ms
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
9.0ms
(*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))))
5.0ms
(/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2)))
1.0ms
(sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2)))

simplify222.0ms (1.7%)

Algorithm
egg-herbie
Rules
629×fma-def_binary64
486×associate-*l*_binary64
420×associate-*r*_binary64
263×associate-*r/_binary64
258×fma-neg_binary64
Counts
339 → 404
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042412369
111719283
244939166
351089166

prune495.0ms (3.8%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New4040404
Fresh055
Picked011
Done011
Total4047411
Error
0b
Counts
411 → 7
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
0.4b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
1.2b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))))
0.7b
(*.f64 (cos.f64 th) (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 2))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
0.5b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (sqrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 (sqrt.f64 2))))
0.6b
(*.f64 (cos.f64 th) (/.f64 1 (/.f64 (sqrt.f64 2) (fma.f64 a2 a2 (*.f64 a1 a1)))))
Compiler

Compiled 15690 to 9213 computations (41.3% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a1 a1 (*.f64 a2 a2))
0.3b
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))
0.4b
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
0.6b
(/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))

series513.0ms (3.9%)

Counts
3 → 72
Calls

3 calls:

283.0ms
(/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))
175.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))
54.0ms
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))

rewrite42.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
70×times-frac_binary64
70×add-sqr-sqrt_binary64
48×*-un-lft-identity_binary64
48×add-cube-cbrt_binary64
46×cbrt-prod_binary64
Counts
3 → 148
Calls

3 calls:

15.0ms
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
6.0ms
(/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2)))
5.0ms
(/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))

simplify164.0ms (1.3%)

Algorithm
egg-herbie
Rules
826×fma-def_binary64
508×associate-/l/_binary64
196×associate-*r/_binary64
187×cancel-sign-sub-inv_binary64
184×distribute-rgt-in_binary64
Counts
220 → 217
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02616892
16365433
225155371
347095361
451945361

prune286.0ms (2.2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New2400240
Fresh044
Picked011
Done022
Total2407247
Error
0b
Counts
247 → 7
Alt Table
StatusErrorProgram
0.4b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (cbrt.f64 (sqrt.f64 2))))
0.4b
(*.f64 (cos.f64 th) (/.f64 (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (cbrt.f64 (sqrt.f64 2))))
1.2b
(*.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2))))) (cbrt.f64 (*.f64 (cos.f64 th) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 2)))))
0.7b
(*.f64 (cos.f64 th) (*.f64 (/.f64 1 (sqrt.f64 (sqrt.f64 2))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (sqrt.f64 (sqrt.f64 2)))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2)))) (/.f64 (fma.f64 a1 a1 (*.f64 a2 a2)) (cbrt.f64 (sqrt.f64 2))))
0.5b
(*.f64 (*.f64 (cos.f64 th) (/.f64 (hypot.f64 a2 a1) (sqrt.f64 (sqrt.f64 2)))) (/.f64 (sqrt.f64 (fma.f64 a1 a1 (*.f64 a2 a2))) (sqrt.f64 (sqrt.f64 2))))
0.6b
(*.f64 (cos.f64 th) (/.f64 1 (/.f64 (sqrt.f64 2) (fma.f64 a2 a2 (*.f64 a1 a1)))))
Compiler

Compiled 7489 to 4607 computations (38.5% saved)

regimes2.9s (22.5%)

Accuracy

Total 0.4b remaining (85.6%)

Threshold costs 0.4b (85.6%)

Counts
277 → 1
Compiler

Compiled 59111 to 42997 computations (27.3% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01957
12357
22257

end171.0ms (1.3%)

Remove

(sort a1 a2)

Compiler

Compiled 333 to 258 computations (22.5% saved)

Profiling

Loading profile data...