Details

Time bar (total: 11.7s)

analyze978.0ms (8.4%)

Algorithm
search
egg-herbie
Rules
591×neg-mul-1_binary64
519×neg-sub0_binary64
502×div-sub_binary64
497×associate-/l*_binary64
455×associate-/r*_binary64
378×sub-neg_binary64
326×distribute-lft-neg-out_binary64
325×distribute-neg-frac_binary64
240×distribute-rgt-neg-out_binary64
226×distribute-frac-neg_binary64
219×distribute-rgt-neg-in_binary64
175×cancel-sign-sub-inv_binary64
164×unsub-neg_binary64
155×distribute-rgt-in_binary64
151×associate-*r*_binary64
138×cancel-sign-sub_binary64
133×associate-*l*_binary64
118×remove-double-neg_binary64
101×*-commutative_binary64
88×associate-/r/_binary64
77×+-commutative_binary64
76×distribute-neg-in_binary64 associate-*l/_binary64
73×distribute-lft-in_binary64
57×associate--l-_binary64
56×times-frac_binary64 distribute-lft-neg-in_binary64
53×associate-*r/_binary64
52×associate-/l/_binary64
51×/-rgt-identity_binary64 distribute-neg-out_binary64 associate--r+_binary64
46×sub0-neg_binary64 associate-+r-_binary64
45×associate-+l-_binary64
36×*-lft-identity_binary64
35×associate--r-_binary64
32×associate-+r+_binary64
30×div0_binary64
24×associate-+l+_binary64
18×mul0-rgt_binary64
15×*-rgt-identity_binary64 mul0-lft_binary64
14×+-rgt-identity_binary64
13×distribute-lft-out_binary64
12×distribute-rgt-out--_binary64
associate--l+_binary64
mul-1-neg_binary64 +-lft-identity_binary64 swap-sqr_binary64
sqr-neg_binary64 --rgt-identity_binary64 remove-double-div_binary64
1-exp_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-pow_binary64 log-rec_binary64 log-div_binary64 log-prod_binary64 pow-base-0_binary64 unpow1/3_binary64 unpow3_binary64 unpow2_binary64 unpow1/2_binary64 pow-plus_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow1_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-lft-sqr_binary64 exp-cbrt_binary64 exp-sqrt_binary64 exp-prod_binary64 div-exp_binary64 rec-exp_binary64 prod-exp_binary64 exp-diff_binary64 exp-neg_binary64 exp-sum_binary64 e-exp-1_binary64 exp-1-e_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 cube-unmult_binary64 cube-mult_binary64 cube-div_binary64 cube-prod_binary64 cube-neg_binary64 rem-3cbrt-rft_binary64 rem-3cbrt-lft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 rem-sqrt-square_binary64 rem-square-sqrt_binary64 *-inverses_binary64 +-inverses_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 pow-sqr_binary64 sqr-pow_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 difference-of-squares_binary64 unswap-sqr_binary64 distribute-rgt1-in_binary64 distribute-lft1-in_binary64 distribute-rgt-out_binary64 distribute-lft-out--_binary64 count-2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055232
1127224
2250224
3535216
4880216
51586216
63577216
74244216
84751216
94877216
033
133
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
12.5%87.4%0.1%6
20.3%73.3%6.4%7
27.3%66.3%6.4%8
38.2%53%8.7%9
46%40.6%13.4%10
49.9%35.1%15%11
54.9%26.9%18.1%12
57.4%22%20.6%13
59.7%18%22.4%14
Compiler

Compiled 39 to 27 computations (30.8% saved)

sample42.0ms (0.4%)

Algorithm
intervals
Results
23.0ms256×body128valid
1.0ms17×body128nan
1.0ms11×body128invalid
Compiler

Compiled 77 to 56 computations (27.3% saved)

simplify601.0ms (5.2%)

Algorithm
egg-herbie
Rules
1534×div-sub_binary64
1283×associate-/l*_binary64
1224×distribute-rgt-in_binary64
767×associate-/r*_binary64
744×distribute-lft-in_binary64
638×sub-neg_binary64
529×unsub-neg_binary64
510×cancel-sign-sub-inv_binary64
488×times-frac_binary64
376×associate-/r/_binary64
308×associate-/l/_binary64
284×associate-*l/_binary64
249×*-commutative_binary64
241×distribute-neg-frac_binary64
237×distribute-rgt-neg-in_binary64
235×neg-mul-1_binary64
206×distribute-lft-neg-in_binary64
202×distribute-rgt-neg-out_binary64
183×distribute-lft-neg-out_binary64
151×distribute-frac-neg_binary64
138×neg-sub0_binary64 associate--r+_binary64
112×distribute-rgt-out_binary64
109×*-lft-identity_binary64
100×distribute-neg-in_binary64
86×+-rgt-identity_binary64
80×associate--l+_binary64
78×mul0-rgt_binary64
75×+-commutative_binary64
74×associate-*l*_binary64
73×div0_binary64 associate-+r-_binary64
72×/-rgt-identity_binary64 mul0-lft_binary64
70×distribute-rgt-out--_binary64
68×associate--l-_binary64
64×associate-*r*_binary64
58×+-lft-identity_binary64
57×remove-double-neg_binary64 associate-+l+_binary64 associate-+r+_binary64
55×associate-*r/_binary64
51×*-rgt-identity_binary64
50×associate--r-_binary64
48×remove-double-div_binary64
34×distribute-neg-out_binary64
30×associate-+l-_binary64
28×sub0-neg_binary64
15×--rgt-identity_binary64
distribute-lft-out_binary64
mul-1-neg_binary64 distribute-lft-out--_binary64
cancel-sign-sub_binary64
swap-sqr_binary64
sqr-neg_binary64
1-exp_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-pow_binary64 log-rec_binary64 log-div_binary64 log-prod_binary64 pow-base-0_binary64 unpow1/3_binary64 unpow3_binary64 unpow2_binary64 unpow1/2_binary64 pow-plus_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow1_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-lft-sqr_binary64 exp-cbrt_binary64 exp-sqrt_binary64 exp-prod_binary64 div-exp_binary64 rec-exp_binary64 prod-exp_binary64 exp-diff_binary64 exp-neg_binary64 exp-sum_binary64 e-exp-1_binary64 exp-1-e_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 cube-unmult_binary64 cube-mult_binary64 cube-div_binary64 cube-prod_binary64 cube-neg_binary64 rem-3cbrt-rft_binary64 rem-3cbrt-lft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 rem-sqrt-square_binary64 rem-square-sqrt_binary64 *-inverses_binary64 +-inverses_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 pow-sqr_binary64 sqr-pow_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 difference-of-squares_binary64 unswap-sqr_binary64 distribute-rgt1-in_binary64 distribute-lft1-in_binary64 count-2_binary64
Counts
1 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02258
14356
29156
319854
430954
551954
691854
7135654
8150554
9218154
10280654
11281254
12281454
13277654
14280054
15398254
16311854
17312654
18313454
19313454
20314254
21314254
22394454
23293454
24312054
25308654
26309054
27310254
28310654
29310654
30326854
31319654
32332454
33342854
34353254
35363654
36303654
37303654
38305654
39309254
40309454
41309454
42278554

prune9.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
17.4b
Counts
2 → 1
Compiler

Compiled 74 to 51 computations (31.1% saved)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

1.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
3.0b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 765 to 1275 computations (-66.7% saved)

rewrite232.0ms (2%)

Algorithm
rewrite-expression-head
Error
17.4b
Rules
16×*-un-lft-identity_binary64
14×add-sqr-sqrt_binary64
12×add-log-exp_binary64
10×sqrt-prod_binary64
add-cube-cbrt_binary64
pow1_binary64 cancel-sign-sub-inv_binary64
add-exp-log_binary64 add-cbrt-cube_binary64 sqrt-div_binary64
flip3--_binary64 flip--_binary64
pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 neg-log_binary64 diff-log_binary64 difference-of-squares_binary64 distribute-lft-out--_binary64 distribute-rgt-neg-in_binary64 neg-sub0_binary64 sum-log_binary64 distribute-lft-out_binary64
sub-neg_binary64 associate--l-_binary64 flip3-+_binary64 flip-+_binary64 associate-+l-_binary64 +-commutative_binary64
Counts
4 → 68
Calls

4 calls:

10.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
9.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
6.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
4.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 3017 to 1705 computations (43.5% saved)

series973.0ms (8.4%)

Error
4.7b
Counts
4 → 68
Calls

4 calls:

271.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
227.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
215.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
193.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 5664 to 4027 computations (28.9% saved)

simplify115.0ms (1%)

Algorithm
egg-herbie
Rules
457×times-frac_binary64
241×cancel-sign-sub-inv_binary64
224×associate-/l*_binary64
220×associate-/r*_binary64
215×div-sub_binary64
155×distribute-rgt-neg-in_binary64
141×distribute-rgt-in_binary64
136×distribute-lft-neg-in_binary64
122×distribute-lft-in_binary64
95×sub-neg_binary64
93×distribute-lft-neg-out_binary64
90×distribute-rgt-neg-out_binary64
88×associate-*r*_binary64
74×unswap-sqr_binary64
72×associate-*l*_binary64 associate-+l-_binary64
71×unsub-neg_binary64
69×cube-prod_binary64 neg-sub0_binary64
68×associate-+r-_binary64
61×*-commutative_binary64
60×neg-mul-1_binary64
59×associate-+l+_binary64
56×associate-*l/_binary64
48×distribute-neg-out_binary64 +-commutative_binary64
47×distribute-rgt-out_binary64
45×associate-/r/_binary64
44×associate-*r/_binary64
41×sqr-pow_binary64
38×exp-prod_binary64
35×associate--l+_binary64
32×exp-sum_binary64
28×associate--r-_binary64
25×distribute-neg-frac_binary64
24×distribute-neg-in_binary64 associate--r+_binary64
21×exp-diff_binary64 associate-/l/_binary64
20×associate--l-_binary64
19×unpow3_binary64 swap-sqr_binary64
18×difference-of-squares_binary64 distribute-lft-out_binary64
16×distribute-frac-neg_binary64
15×distribute-rgt-out--_binary64
13×+-rgt-identity_binary64
11×cube-unmult_binary64 cube-mult_binary64 sqr-neg_binary64
10×cube-neg_binary64 associate-+r+_binary64
pow-plus_binary64 mul-1-neg_binary64
log-prod_binary64
rem-sqrt-square_binary64
remove-double-neg_binary64
unpow2_binary64 unpow1/2_binary64 unpow1_binary64 sub0-neg_binary64 distribute-lft-out--_binary64
div-exp_binary64 rec-exp_binary64 prod-exp_binary64 rem-square-sqrt_binary64 pow-sqr_binary64 cancel-sign-sub_binary64
log-pow_binary64 1-exp_binary64 exp-1-e_binary64 rem-3cbrt-lft_binary64 *-lft-identity_binary64 --rgt-identity_binary64 +-inverses_binary64 distribute-rgt1-in_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-rec_binary64 log-div_binary64 pow-base-0_binary64 unpow1/3_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-lft-sqr_binary64 exp-cbrt_binary64 exp-sqrt_binary64 exp-neg_binary64 e-exp-1_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 cube-div_binary64 rem-3cbrt-rft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 /-rgt-identity_binary64 *-rgt-identity_binary64 +-lft-identity_binary64 mul0-rgt_binary64 mul0-lft_binary64 div0_binary64 *-inverses_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 remove-double-div_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 distribute-lft1-in_binary64 count-2_binary64
Counts
136 → 103
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01452739
14022579
212312542
346322542
451052542

prune199.0ms (1.7%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New958103
Fresh000
Picked101
Done000
Total968104
Error
4.7b
Counts
104 → 8
Compiler

Compiled 3185 to 1765 computations (44.6% saved)

localize41.0ms (0.4%)

Local error

Found 4 expressions with local error:

19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 765 to 1275 computations (-66.7% saved)

rewrite273.0ms (2.3%)

Algorithm
rewrite-expression-head
Error
4.7b
Rules
12×add-sqr-sqrt_binary64 sqrt-prod_binary64
pow1_binary64 add-cube-cbrt_binary64 sqrt-div_binary64 *-un-lft-identity_binary64
pow1/2_binary64 add-log-exp_binary64 add-exp-log_binary64 add-cbrt-cube_binary64 sqrt-pow1_binary64 flip3--_binary64 flip--_binary64 rem-sqrt-square_binary64
Counts
4 → 60
Calls

4 calls:

5.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
5.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
4.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
4.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 4324 to 2311 computations (46.6% saved)

series968.0ms (8.3%)

Error
4.7b
Counts
4 → 69
Calls

4 calls:

220.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
220.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
216.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
212.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 a c))))
Compiler

Compiled 9403 to 5957 computations (36.6% saved)

simplify100.0ms (0.9%)

Algorithm
egg-herbie
Rules
708×associate-*l*_binary64
657×cancel-sign-sub-inv_binary64
621×associate-*r*_binary64
508×unswap-sqr_binary64
277×times-frac_binary64
190×associate-/l*_binary64
153×distribute-rgt-neg-in_binary64
145×distribute-lft-neg-in_binary64
123×associate-/r*_binary64 *-commutative_binary64
83×neg-sub0_binary64
80×neg-mul-1_binary64
75×sub-neg_binary64
50×sqr-pow_binary64
42×associate-/r/_binary64
40×associate-*r/_binary64
39×associate-*l/_binary64
34×cube-prod_binary64 +-commutative_binary64
29×distribute-rgt-out_binary64
23×difference-of-squares_binary64
21×unsub-neg_binary64 distribute-neg-frac_binary64
20×swap-sqr_binary64 associate-/l/_binary64
18×distribute-rgt-in_binary64
17×distribute-lft-in_binary64
14×associate-+r+_binary64
12×unpow3_binary64 associate--l+_binary64 associate-+l-_binary64
11×cube-unmult_binary64 associate-+r-_binary64 associate-+l+_binary64
10×+-rgt-identity_binary64 distribute-lft-neg-out_binary64
pow-plus_binary64 cube-mult_binary64 sub0-neg_binary64
div-sub_binary64
distribute-lft-out_binary64
rem-sqrt-square_binary64
mul0-rgt_binary64 mul0-lft_binary64 pow-sqr_binary64 distribute-neg-in_binary64
unpow2_binary64 unpow1/2_binary64 unpow1_binary64 mul-1-neg_binary64
rem-square-sqrt_binary64 distribute-rgt-neg-out_binary64 associate--r+_binary64
1-exp_binary64 distribute-rgt-out--_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-pow_binary64 log-rec_binary64 log-div_binary64 log-prod_binary64 pow-base-0_binary64 unpow1/3_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-lft-sqr_binary64 exp-cbrt_binary64 exp-sqrt_binary64 exp-prod_binary64 div-exp_binary64 rec-exp_binary64 prod-exp_binary64 exp-diff_binary64 exp-neg_binary64 exp-sum_binary64 e-exp-1_binary64 exp-1-e_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 cube-div_binary64 cube-neg_binary64 rem-3cbrt-rft_binary64 rem-3cbrt-lft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 sqr-neg_binary64 /-rgt-identity_binary64 *-rgt-identity_binary64 *-lft-identity_binary64 remove-double-neg_binary64 --rgt-identity_binary64 +-lft-identity_binary64 div0_binary64 *-inverses_binary64 +-inverses_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 remove-double-div_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 cancel-sign-sub_binary64 distribute-frac-neg_binary64 distribute-neg-out_binary64 distribute-rgt1-in_binary64 distribute-lft1-in_binary64 distribute-lft-out--_binary64 count-2_binary64 associate--r-_binary64 associate--l-_binary64
Counts
129 → 62
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01022209
12262119
27472119
336242119
456402119

prune196.0ms (1.7%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New62062
Fresh077
Picked011
Done000
Total62870
Error
4.7b
Counts
70 → 8
Compiler

Compiled 3551 to 1951 computations (45.1% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
0.6b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
1.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 765 to 1275 computations (-66.7% saved)

rewrite213.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
4.6b
Rules
19×*-un-lft-identity_binary64
10×add-log-exp_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
distribute-lft-out_binary64
pow1_binary64 times-frac_binary64 associate-/l*_binary64
sqrt-prod_binary64 distribute-rgt-neg-in_binary64
flip3--_binary64 sqrt-div_binary64 flip--_binary64 sum-log_binary64 flip3-+_binary64 flip-+_binary64 neg-sub0_binary64 associate-+l-_binary64 div-exp_binary64 cbrt-undiv_binary64 associate-/l/_binary64
pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 neg-log_binary64 +-commutative_binary64 diff-log_binary64 sub-neg_binary64 cancel-sign-sub-inv_binary64 prod-exp_binary64 cbrt-unprod_binary64 frac-2neg_binary64 div-sub_binary64 clear-num_binary64 div-inv_binary64 associate-/r*_binary64
Counts
4 → 70
Calls

4 calls:

15.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
9.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
5.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
4.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
Compiler

Compiled 2548 to 1538 computations (39.6% saved)

series960.0ms (8.2%)

Error
4.6b
Counts
4 → 65
Calls

4 calls:

301.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
221.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
207.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
178.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 3727 to 2913 computations (21.8% saved)

simplify117.0ms (1%)

Algorithm
egg-herbie
Rules
795×times-frac_binary64
498×div-sub_binary64
220×cancel-sign-sub-inv_binary64
185×distribute-rgt-in_binary64
172×distribute-lft-in_binary64
170×distribute-rgt-neg-in_binary64
152×distribute-lft-neg-in_binary64
124×exp-prod_binary64
121×distribute-rgt-neg-out_binary64
116×distribute-lft-neg-out_binary64
106×associate-*r*_binary64
100×associate-*l*_binary64
93×sub-neg_binary64 associate-/l/_binary64
86×*-commutative_binary64
79×cube-prod_binary64
74×neg-sub0_binary64
66×neg-mul-1_binary64
63×associate-/l*_binary64
57×unswap-sqr_binary64
56×unsub-neg_binary64
51×associate-/r*_binary64
48×exp-sum_binary64 sqr-pow_binary64
44×distribute-rgt-out_binary64
39×distribute-neg-out_binary64
37×+-commutative_binary64
36×distribute-neg-frac_binary64 distribute-frac-neg_binary64
27×associate-*l/_binary64
24×associate-*r/_binary64
23×exp-diff_binary64
18×unpow3_binary64 swap-sqr_binary64
17×distribute-lft-out_binary64
16×distribute-neg-in_binary64
14×difference-of-squares_binary64
12×distribute-rgt-out--_binary64
11×pow-plus_binary64 cube-unmult_binary64 cube-mult_binary64 cube-neg_binary64 sqr-neg_binary64
10×associate-+r-_binary64
associate-/r/_binary64 associate--r+_binary64
exp-neg_binary64 +-rgt-identity_binary64
mul-1-neg_binary64 distribute-lft-out--_binary64 associate--l+_binary64
log-div_binary64 log-prod_binary64 unpow2_binary64 rem-sqrt-square_binary64 pow-sqr_binary64
remove-double-neg_binary64 associate-+l-_binary64 associate-+l+_binary64
unpow1/2_binary64 unpow1_binary64 exp-lft-sqr_binary64 prod-exp_binary64 cube-div_binary64 associate-+r+_binary64
log-pow_binary64 div-exp_binary64 sub0-neg_binary64 associate--r-_binary64 associate--l-_binary64
exp-sqrt_binary64 rec-exp_binary64 1-exp_binary64 exp-1-e_binary64 rem-square-sqrt_binary64 *-lft-identity_binary64 --rgt-identity_binary64 div0_binary64 *-inverses_binary64 +-inverses_binary64 cancel-sign-sub_binary64 distribute-rgt1-in_binary64 count-2_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-rec_binary64 pow-base-0_binary64 unpow1/3_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-cbrt_binary64 e-exp-1_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 rem-3cbrt-rft_binary64 rem-3cbrt-lft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 /-rgt-identity_binary64 *-rgt-identity_binary64 +-lft-identity_binary64 mul0-rgt_binary64 mul0-lft_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 remove-double-div_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 distribute-lft1-in_binary64
Counts
135 → 110
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01832851
14942509
215732490
346192490
456862490

prune181.0ms (1.6%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New1046110
Fresh246
Picked101
Done101
Total10810118
Error
4.6b
Counts
118 → 10
Compiler

Compiled 2603 to 1585 computations (39.1% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(/.f64 (*.f64 2 c) (*.f64 b -2))
0.6b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
1.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
19.1b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 765 to 1275 computations (-66.7% saved)

rewrite208.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
4.4b
Rules
16×add-exp-log_binary64 add-cbrt-cube_binary64
10×add-log-exp_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
pow1_binary64 add-cube-cbrt_binary64
prod-exp_binary64 div-exp_binary64 cbrt-undiv_binary64 cbrt-unprod_binary64
sqrt-prod_binary64
flip3--_binary64 sqrt-div_binary64 flip--_binary64 sum-log_binary64 distribute-lft-out_binary64
pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 neg-log_binary64 flip3-+_binary64 flip-+_binary64 distribute-rgt-neg-in_binary64 neg-sub0_binary64 associate-+l-_binary64 +-commutative_binary64 diff-log_binary64 sub-neg_binary64 cancel-sign-sub-inv_binary64 frac-2neg_binary64 times-frac_binary64 clear-num_binary64 div-inv_binary64 associate-/l*_binary64 associate-/r*_binary64
Counts
4 → 63
Calls

4 calls:

9.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
6.0ms
(/.f64 (*.f64 2 c) (*.f64 b -2))
5.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
4.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
Compiler

Compiled 2270 to 1400 computations (38.3% saved)

series770.0ms (6.6%)

Error
4.4b
Counts
4 → 56
Calls

4 calls:

236.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
216.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
187.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
85.0ms
(/.f64 (*.f64 2 c) (*.f64 b -2))
Compiler

Compiled 3168 to 2473 computations (21.9% saved)

simplify139.0ms (1.2%)

Algorithm
egg-herbie
Rules
421×associate-*l/_binary64
326×associate-*r/_binary64
215×associate-/l/_binary64
185×cancel-sign-sub-inv_binary64
160×times-frac_binary64
147×distribute-rgt-neg-in_binary64
138×associate-/r/_binary64
136×distribute-lft-neg-out_binary64
127×exp-prod_binary64 distribute-lft-neg-in_binary64
122×distribute-rgt-neg-out_binary64
113×associate-*l*_binary64
110×distribute-rgt-in_binary64
104×associate-*r*_binary64
98×distribute-lft-in_binary64
89×associate-/l*_binary64
82×sub-neg_binary64
73×associate-/r*_binary64
72×*-commutative_binary64
60×log-prod_binary64 distribute-frac-neg_binary64
59×neg-sub0_binary64
57×unswap-sqr_binary64
53×neg-mul-1_binary64
51×unsub-neg_binary64
50×sqr-pow_binary64
43×cube-prod_binary64
42×distribute-rgt-out_binary64
40×exp-sum_binary64
39×distribute-neg-out_binary64
33×log-div_binary64
32×+-commutative_binary64
29×div-sub_binary64
27×unpow3_binary64
26×swap-sqr_binary64
21×distribute-neg-frac_binary64
20×exp-diff_binary64
18×cube-mult_binary64
15×distribute-lft-out_binary64
14×difference-of-squares_binary64
13×pow-plus_binary64 cube-unmult_binary64
12×distribute-rgt-out--_binary64
10×associate-+r-_binary64
distribute-neg-in_binary64 associate--r+_binary64
exp-neg_binary64 cube-div_binary64 associate--l+_binary64
cube-neg_binary64
log-pow_binary64 sqr-neg_binary64 +-rgt-identity_binary64
unpow2_binary64 mul-1-neg_binary64 remove-double-neg_binary64 pow-sqr_binary64 associate-+l+_binary64
exp-lft-sqr_binary64 associate-+l-_binary64
unpow1/2_binary64 unpow1_binary64 exp-sqrt_binary64 distribute-lft-out--_binary64 associate--r-_binary64 associate-+r+_binary64
div-exp_binary64 prod-exp_binary64 rem-sqrt-square_binary64 sub0-neg_binary64 --rgt-identity_binary64 associate--l-_binary64
rec-exp_binary64 1-exp_binary64 exp-1-e_binary64 rem-square-sqrt_binary64 *-lft-identity_binary64 +-inverses_binary64 cancel-sign-sub_binary64 distribute-rgt1-in_binary64 count-2_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same erfc-erf_binary64 erf-erfc_binary64 erf-odd_binary64 if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 not-gte_binary64 not-lte_binary64 not-gt_binary64 not-lt_binary64 gte-same_binary64 lte-same_binary64 gt-same_binary64 lt-same_binary64 sinh---cosh_binary64 sinh-+-cosh_binary64 sinh-cosh_binary64 tanh-def-c_binary64 tanh-def-b_binary64 tanh-def-a_binary64 cosh-def_binary64 sinh-def_binary64 tan-neg_binary64 cos-neg_binary64 sin-neg_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 hang-m-tan_binary64 hang-p-tan_binary64 hang-m0-tan_binary64 hang-p0-tan_binary64 hang-0m-tan_binary64 hang-0p-tan_binary64 tan-+PI/2_binary64 tan-+PI_binary64 tan-PI_binary64 tan-PI/3_binary64 tan-PI/4_binary64 tan-PI/6_binary64 cos-+PI/2_binary64 cos-+PI_binary64 cos-PI_binary64 cos-PI/2_binary64 cos-PI/3_binary64 cos-PI/4_binary64 cos-PI/6_binary64 sin-+PI/2_binary64 sin-+PI_binary64 sin-PI_binary64 sin-PI/2_binary64 sin-PI/3_binary64 sin-PI/4_binary64 sin-PI/6_binary64 sub-1-sin_binary64 sub-1-cos_binary64 -1-add-sin_binary64 -1-add-cos_binary64 1-sub-sin_binary64 1-sub-cos_binary64 cos-sin-sum_binary64 log-E_binary64 log-rec_binary64 pow-base-0_binary64 unpow1/3_binary64 exp-to-pow_binary64 pow-base-1_binary64 unpow0_binary64 unpow-1_binary64 exp-lft-cube_binary64 exp-cbrt_binary64 e-exp-1_binary64 exp-0_binary64 rem-log-exp_binary64 rem-exp-log_binary64 rem-3cbrt-rft_binary64 rem-3cbrt-lft_binary64 rem-cbrt-cube_binary64 rem-cube-cbrt_binary64 sqr-abs_binary64 /-rgt-identity_binary64 *-rgt-identity_binary64 +-lft-identity_binary64 mul0-rgt_binary64 mul0-lft_binary64 div0_binary64 *-inverses_binary64 lft-mult-inverse_binary64 rgt-mult-inverse_binary64 remove-double-div_binary64 difference-of-sqr--1_binary64 difference-of-sqr-1_binary64 distribute-lft1-in_binary64
Counts
119 → 96
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01641999
14281700
216971684
347401684
449881684
549981684
649181684

prune149.0ms (1.3%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New92496
Fresh279
Picked101
Done000
Total9511106
Error
4.4b
Counts
106 → 11
Compiler

Compiled 1679 to 977 computations (41.8% saved)

regimes2.5s (21.4%)

Accuracy

Total 1.4b remaining (20.8%)

Threshold costs 0b (0%)

Compiler

Compiled 20999 to 15324 computations (27% saved)

bsearch94.0ms (0.8%)

Steps
ItersRangePoint
8
2.6036839226974344e+87
8.186591101373147e+89
4.2871226033316587e+89
6
-7.154093724916874e+72
-1.1230543681736717e+71
-3.5015940117385165e+72
Compiler

Compiled 1 to 3 computations (-200% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
21×*-commutative_binary64
18×+-commutative_binary64
16×sub-neg_binary64
12×neg-mul-1_binary64 neg-sub0_binary64
10×distribute-rgt-neg-in_binary64
distribute-lft-neg-in_binary64
cancel-sign-sub-inv_binary64
unsub-neg_binary64 distribute-neg-out_binary64 distribute-lft-neg-out_binary64
distribute-neg-frac_binary64
not-true not-false not-not not-and not-or and-true-l and-true-r and-false-l and-false-r and-same or-true-l or-true-r or-false-l or-false-r or-same if-if-and-not_binary64 if-if-and_binary64 if-if-or-not_binary64 if-if-or_binary64 if-not_binary64 if-same_binary64 if-false_binary64 if-true_binary64 tan-0_binary64 cos-0_binary64 sin-0_binary64 unpow1_binary64 e-exp-1_binary64 1-exp_binary64 exp-1-e_binary64 exp-0_binary64 sqr-abs_binary64 sqr-neg_binary64 mul-1-neg_binary64 /-rgt-identity_binary64 *-rgt-identity_binary64 *-lft-identity_binary64 remove-double-neg_binary64 sub0-neg_binary64 --rgt-identity_binary64 +-rgt-identity_binary64 +-lft-identity_binary64 cancel-sign-sub_binary64 distribute-frac-neg_binary64 distribute-neg-in_binary64 distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
047155
178151
2114151
3143151
4159151
5164151
6163151

end5.0ms (0%)

Compiler

Compiled 100 to 63 computations (37% saved)

sample1.5s (12.9%)

Algorithm
intervals
Results
700.0ms8000×body128valid
56.0ms659×body128nan
29.0ms350×body128invalid
Compiler

Compiled 541 to 383 computations (29.2% saved)

Profiling

Loading profile data...