Details

Time bar (total: 10.0s)

analyze4.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
50%50%0.1%2
74.9%25%0.1%3
87.4%12.5%0.1%4
93.7%6.2%0.1%5
96.8%3.1%0.1%6
98.3%1.6%0.1%7
99.1%0.8%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 7 to 7 computations (0% saved)

sample22.0ms (0.2%)

Algorithm
intervals
Results
13.0ms256×body128valid
Compiler

Compiled 13 to 15 computations (-15.4% saved)

simplify144.0ms (1.4%)

Algorithm
egg-herbie
Rules
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_341 erf-erfc_binary64_340 erf-odd_binary64_339 if-if-and-not_binary64_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 not-gte_binary64_330 not-lte_binary64_329 not-gt_binary64_328 not-lt_binary64_327 gte-same_binary64_326 lte-same_binary64_325 gt-same_binary64_324 lt-same_binary64_323 sinh---cosh_binary64_270 sinh-+-cosh_binary64_269 sinh-cosh_binary64_268 tanh-def-c_binary64_267 tanh-def-b_binary64_266 tanh-def-a_binary64_265 cosh-def_binary64_264 sinh-def_binary64_263 tan-neg_binary64_210 cos-neg_binary64_209 sin-neg_binary64_208 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 hang-m-tan_binary64_204 hang-p-tan_binary64_203 hang-m0-tan_binary64_202 hang-p0-tan_binary64_201 hang-0m-tan_binary64_200 hang-0p-tan_binary64_199 tan-+PI/2_binary64_198 tan-+PI_binary64_197 tan-PI_binary64_196 tan-PI/3_binary64_195 tan-PI/4_binary64_194 tan-PI/6_binary64_193 cos-+PI/2_binary64_192 cos-+PI_binary64_191 cos-PI_binary64_190 cos-PI/2_binary64_189 cos-PI/3_binary64_188 cos-PI/4_binary64_187 cos-PI/6_binary64_186 sin-+PI/2_binary64_185 sin-+PI_binary64_184 sin-PI_binary64_183 sin-PI/2_binary64_182 sin-PI/3_binary64_181 sin-PI/4_binary64_180 sin-PI/6_binary64_179 sub-1-sin_binary64_178 sub-1-cos_binary64_177 -1-add-sin_binary64_176 -1-add-cos_binary64_175 1-sub-sin_binary64_174 1-sub-cos_binary64_173 cos-sin-sum_binary64_172 log-E_binary64_168 log-pow_binary64_167 log-rec_binary64_166 log-div_binary64_165 log-prod_binary64_164 pow-base-0_binary64_162 unpow1/3_binary64_145 unpow3_binary64_144 unpow2_binary64_143 unpow1/2_binary64_142 pow-plus_binary64_141 exp-to-pow_binary64_140 pow-base-1_binary64_138 unpow0_binary64_137 unpow1_binary64_136 unpow-1_binary64_135 exp-lft-cube_binary64_134 exp-lft-sqr_binary64_133 exp-cbrt_binary64_132 exp-sqrt_binary64_131 exp-prod_binary64_130 div-exp_binary64_129 rec-exp_binary64_128 prod-exp_binary64_127 exp-diff_binary64_126 exp-neg_binary64_125 exp-sum_binary64_124 e-exp-1_binary64_123 1-exp_binary64_122 exp-1-e_binary64_121 exp-0_binary64_120 rem-log-exp_binary64_119 rem-exp-log_binary64_118 cube-unmult_binary64_115 cube-mult_binary64_108 cube-div_binary64_107 cube-prod_binary64_106 cube-neg_binary64_105 rem-3cbrt-rft_binary64_104 rem-3cbrt-lft_binary64_103 rem-cbrt-cube_binary64_102 rem-cube-cbrt_binary64_101 sqr-abs_binary64_93 sqr-neg_binary64_92 rem-sqrt-square_binary64_91 rem-square-sqrt_binary64_90 times-frac_binary64_84 div-sub_binary64_83 neg-mul-1_binary64_74 neg-sub0_binary64_73 unsub-neg_binary64_72 sub-neg_binary64_71 mul-1-neg_binary64_70 /-rgt-identity_binary64_69 *-rgt-identity_binary64_68 *-lft-identity_binary64_67 remove-double-neg_binary64_66 sub0-neg_binary64_65 --rgt-identity_binary64_64 +-rgt-identity_binary64_63 +-lft-identity_binary64_62 mul0-rgt_binary64_61 mul0-lft_binary64_60 div0_binary64_59 *-inverses_binary64_58 +-inverses_binary64_57 lft-mult-inverse_binary64_56 rgt-mult-inverse_binary64_55 remove-double-div_binary64_54 pow-sqr_binary64_51 sqr-pow_binary64_50 difference-of-sqr--1_binary64_49 difference-of-sqr-1_binary64_48 difference-of-squares_binary64_47 unswap-sqr_binary64_46 swap-sqr_binary64_45 cancel-sign-sub-inv_binary64_44 cancel-sign-sub_binary64_43 distribute-neg-frac_binary64_42 distribute-frac-neg_binary64_41 distribute-neg-out_binary64_40 distribute-neg-in_binary64_39 distribute-rgt-neg-out_binary64_38 distribute-lft-neg-out_binary64_37 distribute-rgt-neg-in_binary64_36 distribute-lft-neg-in_binary64_35 distribute-rgt1-in_binary64_34 distribute-lft1-in_binary64_33 distribute-rgt-out--_binary64_32 distribute-rgt-out_binary64_31 distribute-lft-out--_binary64_30 distribute-lft-out_binary64_29 distribute-rgt-in_binary64_28 distribute-lft-in_binary64_27 count-2_binary64_26 associate-/l/_binary64_25 associate-/r/_binary64_24 associate-/l*_binary64_23 associate-/r*_binary64_22 associate-*l/_binary64_21 associate-*r/_binary64_20 associate-*l*_binary64_19 associate-*r*_binary64_18 associate--r-_binary64_17 associate--l-_binary64_16 associate--l+_binary64_15 associate--r+_binary64_14 associate-+l-_binary64_13 associate-+r-_binary64_12 associate-+l+_binary64_11 associate-+r+_binary64_10 *-commutative_binary64_9 +-commutative_binary64_8
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0.9b
Counts
1 → 1
Compiler

Compiled 6 to 6 computations (0% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

0.9b
(/.f64 (atan2.f64 im re) (log.f64 10))

rewrite39.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
12×times-frac_binary64_84
10×add-cube-cbrt_binary64_113 add-sqr-sqrt_binary64_100 *-un-lft-identity_binary64_78
pow1_binary64_139
log-pow_binary64_167 associate-/r*_binary64_22
add-exp-log_binary64_116 add-cbrt-cube_binary64_114 associate-/l*_binary64_23
div-exp_binary64_129 add-log-exp_binary64_117 cbrt-undiv_binary64_112 frac-2neg_binary64_89 clear-num_binary64_77 div-inv_binary64_75
Counts
1 → 31
Calls

1 calls:

3.0ms
(/.f64 (atan2.f64 im re) (log.f64 10))
Compiler

Compiled 426 to 243 computations (43% saved)

series204.0ms (2%)

Error
0.9b
Counts
1 → 6
Calls

1 calls:

199.0ms
(/.f64 (atan2.f64 im re) (log.f64 10))
Compiler

Compiled 108 to 93 computations (13.9% saved)

simplify269.0ms (2.7%)

Algorithm
egg-herbie
Rules
376×neg-mul-1_binary64_74
339×associate-/l*_binary64_23
309×cube-prod_binary64_106
307×times-frac_binary64_84
287×associate-/l/_binary64_25
283×exp-to-pow_binary64_140
241×div-sub_binary64_83
155×distribute-rgt-out--_binary64_32
130×distribute-rgt-out_binary64_31
128×distribute-frac-neg_binary64_41
125×distribute-rgt-neg-out_binary64_38
123×distribute-lft-neg-out_binary64_37
119×associate-/r*_binary64_22
103×associate-/r/_binary64_24
100×*-commutative_binary64_9
93×unswap-sqr_binary64_46
88×exp-sum_binary64_124
86×distribute-rgt-in_binary64_28
83×exp-prod_binary64_130
72×distribute-lft-in_binary64_27
71×associate-*l*_binary64_19
58×exp-diff_binary64_126
55×associate-*r*_binary64_18
48×associate-*l/_binary64_21
46×sqr-pow_binary64_50 swap-sqr_binary64_45
41×*-lft-identity_binary64_67
40×pow-plus_binary64_141
39×log-prod_binary64_164 cancel-sign-sub-inv_binary64_44
38×log-pow_binary64_167
36×cube-div_binary64_107 associate-*r/_binary64_20
32×sub-neg_binary64_71
30×remove-double-div_binary64_54
29×sqr-neg_binary64_92
28×pow-sqr_binary64_51 associate--l+_binary64_15
27×unsub-neg_binary64_72
26×log-div_binary64_165 associate--r+_binary64_14 associate-+l-_binary64_13 associate-+l+_binary64_11
25×cube-neg_binary64_105
23×distribute-rgt-neg-in_binary64_36 associate--l-_binary64_16 associate-+r+_binary64_10
21×*-rgt-identity_binary64_68
18×associate--r-_binary64_17
17×cube-unmult_binary64_115
16×distribute-lft-neg-in_binary64_35
15×associate-+r-_binary64_12
13×pow-base-1_binary64_138 distribute-neg-frac_binary64_42
12×neg-sub0_binary64_73 /-rgt-identity_binary64_69 distribute-neg-out_binary64_40 distribute-rgt1-in_binary64_34
11×log-rec_binary64_166 distribute-lft-out_binary64_29
10×exp-neg_binary64_125 +-commutative_binary64_8
div-exp_binary64_129 prod-exp_binary64_127 +-lft-identity_binary64_62
distribute-lft-out--_binary64_30
sub0-neg_binary64_65 --rgt-identity_binary64_64
unpow3_binary64_144
exp-lft-sqr_binary64_133 rem-log-exp_binary64_119 +-inverses_binary64_57
exp-lft-cube_binary64_134 rec-exp_binary64_128 distribute-neg-in_binary64_39 count-2_binary64_26
div0_binary64_59
log-E_binary64_168 exp-sqrt_binary64_131 1-exp_binary64_122 exp-1-e_binary64_121 remove-double-neg_binary64_66 distribute-lft1-in_binary64_33
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_341 erf-erfc_binary64_340 erf-odd_binary64_339 if-if-and-not_binary64_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 not-gte_binary64_330 not-lte_binary64_329 not-gt_binary64_328 not-lt_binary64_327 gte-same_binary64_326 lte-same_binary64_325 gt-same_binary64_324 lt-same_binary64_323 sinh---cosh_binary64_270 sinh-+-cosh_binary64_269 sinh-cosh_binary64_268 tanh-def-c_binary64_267 tanh-def-b_binary64_266 tanh-def-a_binary64_265 cosh-def_binary64_264 sinh-def_binary64_263 tan-neg_binary64_210 cos-neg_binary64_209 sin-neg_binary64_208 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 hang-m-tan_binary64_204 hang-p-tan_binary64_203 hang-m0-tan_binary64_202 hang-p0-tan_binary64_201 hang-0m-tan_binary64_200 hang-0p-tan_binary64_199 tan-+PI/2_binary64_198 tan-+PI_binary64_197 tan-PI_binary64_196 tan-PI/3_binary64_195 tan-PI/4_binary64_194 tan-PI/6_binary64_193 cos-+PI/2_binary64_192 cos-+PI_binary64_191 cos-PI_binary64_190 cos-PI/2_binary64_189 cos-PI/3_binary64_188 cos-PI/4_binary64_187 cos-PI/6_binary64_186 sin-+PI/2_binary64_185 sin-+PI_binary64_184 sin-PI_binary64_183 sin-PI/2_binary64_182 sin-PI/3_binary64_181 sin-PI/4_binary64_180 sin-PI/6_binary64_179 sub-1-sin_binary64_178 sub-1-cos_binary64_177 -1-add-sin_binary64_176 -1-add-cos_binary64_175 1-sub-sin_binary64_174 1-sub-cos_binary64_173 cos-sin-sum_binary64_172 pow-base-0_binary64_162 unpow1/3_binary64_145 unpow2_binary64_143 unpow1/2_binary64_142 unpow0_binary64_137 unpow1_binary64_136 unpow-1_binary64_135 exp-cbrt_binary64_132 e-exp-1_binary64_123 exp-0_binary64_120 rem-exp-log_binary64_118 cube-mult_binary64_108 rem-3cbrt-rft_binary64_104 rem-3cbrt-lft_binary64_103 rem-cbrt-cube_binary64_102 rem-cube-cbrt_binary64_101 sqr-abs_binary64_93 rem-sqrt-square_binary64_91 rem-square-sqrt_binary64_90 mul-1-neg_binary64_70 +-rgt-identity_binary64_63 mul0-rgt_binary64_61 mul0-lft_binary64_60 *-inverses_binary64_58 lft-mult-inverse_binary64_56 rgt-mult-inverse_binary64_55 difference-of-sqr--1_binary64_49 difference-of-sqr-1_binary64_48 difference-of-squares_binary64_47 cancel-sign-sub_binary64_43
Counts
37 → 19
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
053583
190545
2188545
3357545
4736545
51542545
63618545

prune27.0ms (0.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New14519
Fresh000
Picked011
Done000
Total14620
Error
0.1b
Counts
20 → 6
Compiler

Compiled 382 to 213 computations (44.2% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(*.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10)))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10))))
5.2b
(cbrt.f64 (atan2.f64 im re))
5.2b
(cbrt.f64 (atan2.f64 im re))
5.2b
(cbrt.f64 (atan2.f64 im re))

rewrite215.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0.1b
Rules
46×associate-*r*_binary64_18
42×times-frac_binary64_84
34×add-cube-cbrt_binary64_113 add-sqr-sqrt_binary64_100 *-un-lft-identity_binary64_78
30×cbrt-prod_binary64_109
25×add-exp-log_binary64_116
24×sqrt-prod_binary64_94
16×add-cbrt-cube_binary64_114
15×pow1_binary64_139
10×prod-exp_binary64_127 cbrt-unprod_binary64_111
log-pow_binary64_167
div-exp_binary64_129 cbrt-undiv_binary64_112
add-log-exp_binary64_117
pow1/3_binary64_160 pow-prod-down_binary64_149 associate-*r/_binary64_20
frac-times_binary64_88 associate-*l/_binary64_21 associate-*l*_binary64_19 div-inv_binary64_75 *-commutative_binary64_9
Counts
4 → 105
Calls

4 calls:

23.0ms
(*.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10)))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10))))
1.0ms
(cbrt.f64 (atan2.f64 im re))
1.0ms
(cbrt.f64 (atan2.f64 im re))
1.0ms
(cbrt.f64 (atan2.f64 im re))
Compiler

Compiled 3429 to 1639 computations (52.2% saved)

series899.0ms (9%)

Error
0.1b
Counts
4 → 24
Calls

4 calls:

225.0ms
(cbrt.f64 (atan2.f64 im re))
223.0ms
(cbrt.f64 (atan2.f64 im re))
221.0ms
(cbrt.f64 (atan2.f64 im re))
206.0ms
(*.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10)))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 10))))
Compiler

Compiled 1350 to 886 computations (34.4% saved)

simplify646.0ms (6.5%)

Algorithm
egg-herbie
Rules
476×cancel-sign-sub-inv_binary64_44
394×*-commutative_binary64_9
353×unswap-sqr_binary64_46
259×associate-*l*_binary64_19
240×associate-/r/_binary64_24
228×associate-/r*_binary64_22
198×sqr-pow_binary64_50
175×associate-*r*_binary64_18
152×log-prod_binary64_164
151×associate-*r/_binary64_20
133×associate-*l/_binary64_21
122×sub-neg_binary64_71
121×cube-prod_binary64_106 associate-/l*_binary64_23
115×associate-+l+_binary64_11
107×pow-sqr_binary64_51
83×associate-+r+_binary64_10
80×associate-/l/_binary64_25
76×associate--l+_binary64_15
75×log-div_binary64_165 cube-div_binary64_107
74×swap-sqr_binary64_45
71×exp-prod_binary64_130
57×associate-+l-_binary64_13
54×unsub-neg_binary64_72
51×*-rgt-identity_binary64_68
48×*-lft-identity_binary64_67
36×distribute-rgt-in_binary64_28 associate-+r-_binary64_12
35×unpow3_binary64_144
34×times-frac_binary64_84 distribute-lft-in_binary64_27 associate--r+_binary64_14
31×rem-sqrt-square_binary64_91
28×cube-mult_binary64_108
25×log-pow_binary64_167
23×pow-plus_binary64_141 neg-mul-1_binary64_74 associate--r-_binary64_17 associate--l-_binary64_16
19×sub0-neg_binary64_65
18×distribute-rgt-out_binary64_31
16×cube-unmult_binary64_115 /-rgt-identity_binary64_69
14×neg-sub0_binary64_73
13×distribute-neg-in_binary64_39
11×count-2_binary64_26
10×log-rec_binary64_166 distribute-lft-out_binary64_29 +-commutative_binary64_8
div-exp_binary64_129 prod-exp_binary64_127
--rgt-identity_binary64_64
+-lft-identity_binary64_62
distribute-rgt-neg-in_binary64_36 distribute-lft-neg-in_binary64_35
rec-exp_binary64_128 distribute-neg-out_binary64_40 distribute-rgt1-in_binary64_34
exp-to-pow_binary64_140 +-rgt-identity_binary64_63 mul0-lft_binary64_60 distribute-lft-neg-out_binary64_37
unpow1/3_binary64_145 pow-base-1_binary64_138 exp-sum_binary64_124 1-exp_binary64_122 exp-1-e_binary64_121 rem-log-exp_binary64_119 rem-3cbrt-lft_binary64_103 rem-cbrt-cube_binary64_102 rem-square-sqrt_binary64_90 +-inverses_binary64_57 rgt-mult-inverse_binary64_55 distribute-rgt-neg-out_binary64_38 distribute-rgt-out--_binary64_32 distribute-lft-out--_binary64_30
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_341 erf-erfc_binary64_340 erf-odd_binary64_339 if-if-and-not_binary64_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 not-gte_binary64_330 not-lte_binary64_329 not-gt_binary64_328 not-lt_binary64_327 gte-same_binary64_326 lte-same_binary64_325 gt-same_binary64_324 lt-same_binary64_323 sinh---cosh_binary64_270 sinh-+-cosh_binary64_269 sinh-cosh_binary64_268 tanh-def-c_binary64_267 tanh-def-b_binary64_266 tanh-def-a_binary64_265 cosh-def_binary64_264 sinh-def_binary64_263 tan-neg_binary64_210 cos-neg_binary64_209 sin-neg_binary64_208 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 hang-m-tan_binary64_204 hang-p-tan_binary64_203 hang-m0-tan_binary64_202 hang-p0-tan_binary64_201 hang-0m-tan_binary64_200 hang-0p-tan_binary64_199 tan-+PI/2_binary64_198 tan-+PI_binary64_197 tan-PI_binary64_196 tan-PI/3_binary64_195 tan-PI/4_binary64_194 tan-PI/6_binary64_193 cos-+PI/2_binary64_192 cos-+PI_binary64_191 cos-PI_binary64_190 cos-PI/2_binary64_189 cos-PI/3_binary64_188 cos-PI/4_binary64_187 cos-PI/6_binary64_186 sin-+PI/2_binary64_185 sin-+PI_binary64_184 sin-PI_binary64_183 sin-PI/2_binary64_182 sin-PI/3_binary64_181 sin-PI/4_binary64_180 sin-PI/6_binary64_179 sub-1-sin_binary64_178 sub-1-cos_binary64_177 -1-add-sin_binary64_176 -1-add-cos_binary64_175 1-sub-sin_binary64_174 1-sub-cos_binary64_173 cos-sin-sum_binary64_172 log-E_binary64_168 pow-base-0_binary64_162 unpow2_binary64_143 unpow1/2_binary64_142 unpow0_binary64_137 unpow1_binary64_136 unpow-1_binary64_135 exp-lft-cube_binary64_134 exp-lft-sqr_binary64_133 exp-cbrt_binary64_132 exp-sqrt_binary64_131 exp-diff_binary64_126 exp-neg_binary64_125 e-exp-1_binary64_123 exp-0_binary64_120 rem-exp-log_binary64_118 cube-neg_binary64_105 rem-3cbrt-rft_binary64_104 rem-cube-cbrt_binary64_101 sqr-abs_binary64_93 sqr-neg_binary64_92 div-sub_binary64_83 mul-1-neg_binary64_70 remove-double-neg_binary64_66 mul0-rgt_binary64_61 div0_binary64_59 *-inverses_binary64_58 lft-mult-inverse_binary64_56 remove-double-div_binary64_54 difference-of-sqr--1_binary64_49 difference-of-sqr-1_binary64_48 difference-of-squares_binary64_47 cancel-sign-sub_binary64_43 distribute-neg-frac_binary64_42 distribute-frac-neg_binary64_41 distribute-lft1-in_binary64_33
Counts
129 → 270
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01353056
13642384
217222384
326322303
440072303

prune512.0ms (5.1%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New2655270
Fresh134
Picked011
Done011
Total26610276
Error
0.1b
Counts
276 → 10
Compiler

Compiled 7993 to 4759 computations (40.5% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.2b
(/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10)))
0.7b
(*.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10))) (/.f64 1 (sqrt.f64 (log.f64 10))))

rewrite265.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
92×add-sqr-sqrt_binary64_100
85×times-frac_binary64_84
52×*-un-lft-identity_binary64_78
51×sqrt-prod_binary64_94
46×add-cube-cbrt_binary64_113
26×add-exp-log_binary64_116
25×associate-*l*_binary64_19 associate-*r*_binary64_18
16×add-cbrt-cube_binary64_114
15×unswap-sqr_binary64_46
14×pow1_binary64_139
10×log-pow_binary64_167
div-exp_binary64_129
prod-exp_binary64_127
associate-/r*_binary64_22
cbrt-undiv_binary64_112
cbrt-unprod_binary64_111
div-inv_binary64_75 associate-/l*_binary64_23
1-exp_binary64_122 rec-exp_binary64_128 add-log-exp_binary64_117
pow-prod-down_binary64_149 frac-times_binary64_88 un-div-inv_binary64_76 associate-*l/_binary64_21 associate-*r/_binary64_20 *-commutative_binary64_9 frac-2neg_binary64_89 clear-num_binary64_77
Counts
2 → 133
Calls

2 calls:

23.0ms
(*.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10))) (/.f64 1 (sqrt.f64 (log.f64 10))))
7.0ms
(/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10)))
Compiler

Compiled 3185 to 2425 computations (23.9% saved)

series453.0ms (4.5%)

Error
0.0b
Counts
2 → 12
Calls

2 calls:

236.0ms
(/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10)))
205.0ms
(*.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 10))) (/.f64 1 (sqrt.f64 (log.f64 10))))
Compiler

Compiled 378 to 345 computations (8.7% saved)

simplify643.0ms (6.5%)

Algorithm
egg-herbie
Rules
452×*-commutative_binary64_9
343×div-sub_binary64_83
320×associate-/r/_binary64_24
271×associate-/r*_binary64_22
220×distribute-rgt-neg-out_binary64_38
215×distribute-lft-neg-out_binary64_37
174×associate-*r/_binary64_20
164×associate-*l/_binary64_21
154×sqr-pow_binary64_50
148×associate-/l*_binary64_23
144×associate-*l*_binary64_19
116×log-div_binary64_165
114×cube-prod_binary64_106
109×cube-div_binary64_107
105×associate-/l/_binary64_25
103×log-prod_binary64_164
96×associate-*r*_binary64_18
90×sub-neg_binary64_71
88×distribute-frac-neg_binary64_41
84×swap-sqr_binary64_45
71×exp-prod_binary64_130
66×cancel-sign-sub-inv_binary64_44
64×pow-sqr_binary64_51
57×*-rgt-identity_binary64_68
51×associate--r-_binary64_17
47×/-rgt-identity_binary64_69
46×unswap-sqr_binary64_46
42×unsub-neg_binary64_72 associate-+l-_binary64_13
39×associate--r+_binary64_14
37×times-frac_binary64_84
33×associate--l-_binary64_16
32×neg-mul-1_binary64_74
31×unpow3_binary64_144
30×cube-mult_binary64_108 cancel-sign-sub_binary64_43
28×associate--l+_binary64_15
24×distribute-neg-out_binary64_40
22×*-lft-identity_binary64_67 distribute-rgt-neg-in_binary64_36 distribute-rgt-in_binary64_28 associate-+r-_binary64_12
21×exp-to-pow_binary64_140
20×neg-sub0_binary64_73 distribute-neg-frac_binary64_42
19×distribute-lft-neg-in_binary64_35
18×log-rec_binary64_166 exp-sum_binary64_124 distribute-neg-in_binary64_39
17×distribute-rgt-out_binary64_31
15×associate-+r+_binary64_10
14×log-pow_binary64_167
13×pow-plus_binary64_141
12×associate-+l+_binary64_11
11×exp-diff_binary64_126 sub0-neg_binary64_65 distribute-rgt-out--_binary64_32
10×rem-sqrt-square_binary64_91 distribute-lft-in_binary64_27
cube-unmult_binary64_115 +-commutative_binary64_8
+-lft-identity_binary64_62
count-2_binary64_26
pow-base-1_binary64_138 remove-double-div_binary64_54 distribute-rgt1-in_binary64_34
sqr-neg_binary64_92 remove-double-neg_binary64_66 +-inverses_binary64_57
cube-neg_binary64_105 rem-square-sqrt_binary64_90 +-rgt-identity_binary64_63 div0_binary64_59 distribute-lft-out--_binary64_30 distribute-lft-out_binary64_29
div-exp_binary64_129 rec-exp_binary64_128 prod-exp_binary64_127 1-exp_binary64_122 exp-1-e_binary64_121 rem-log-exp_binary64_119 rem-exp-log_binary64_118 rem-cbrt-cube_binary64_102 sqr-abs_binary64_93 --rgt-identity_binary64_64 mul0-rgt_binary64_61 mul0-lft_binary64_60 *-inverses_binary64_58 rgt-mult-inverse_binary64_55
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_341 erf-erfc_binary64_340 erf-odd_binary64_339 if-if-and-not_binary64_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 not-gte_binary64_330 not-lte_binary64_329 not-gt_binary64_328 not-lt_binary64_327 gte-same_binary64_326 lte-same_binary64_325 gt-same_binary64_324 lt-same_binary64_323 sinh---cosh_binary64_270 sinh-+-cosh_binary64_269 sinh-cosh_binary64_268 tanh-def-c_binary64_267 tanh-def-b_binary64_266 tanh-def-a_binary64_265 cosh-def_binary64_264 sinh-def_binary64_263 tan-neg_binary64_210 cos-neg_binary64_209 sin-neg_binary64_208 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 hang-m-tan_binary64_204 hang-p-tan_binary64_203 hang-m0-tan_binary64_202 hang-p0-tan_binary64_201 hang-0m-tan_binary64_200 hang-0p-tan_binary64_199 tan-+PI/2_binary64_198 tan-+PI_binary64_197 tan-PI_binary64_196 tan-PI/3_binary64_195 tan-PI/4_binary64_194 tan-PI/6_binary64_193 cos-+PI/2_binary64_192 cos-+PI_binary64_191 cos-PI_binary64_190 cos-PI/2_binary64_189 cos-PI/3_binary64_188 cos-PI/4_binary64_187 cos-PI/6_binary64_186 sin-+PI/2_binary64_185 sin-+PI_binary64_184 sin-PI_binary64_183 sin-PI/2_binary64_182 sin-PI/3_binary64_181 sin-PI/4_binary64_180 sin-PI/6_binary64_179 sub-1-sin_binary64_178 sub-1-cos_binary64_177 -1-add-sin_binary64_176 -1-add-cos_binary64_175 1-sub-sin_binary64_174 1-sub-cos_binary64_173 cos-sin-sum_binary64_172 log-E_binary64_168 pow-base-0_binary64_162 unpow1/3_binary64_145 unpow2_binary64_143 unpow1/2_binary64_142 unpow0_binary64_137 unpow1_binary64_136 unpow-1_binary64_135 exp-lft-cube_binary64_134 exp-lft-sqr_binary64_133 exp-cbrt_binary64_132 exp-sqrt_binary64_131 exp-neg_binary64_125 e-exp-1_binary64_123 exp-0_binary64_120 rem-3cbrt-rft_binary64_104 rem-3cbrt-lft_binary64_103 rem-cube-cbrt_binary64_101 mul-1-neg_binary64_70 lft-mult-inverse_binary64_56 difference-of-sqr--1_binary64_49 difference-of-sqr-1_binary64_48 difference-of-squares_binary64_47 distribute-lft1-in_binary64_33
Counts
145 → 367
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01593650
13933134
214712984
319772775
430142727

prune725.0ms (7.3%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New3634367
Fresh347
Picked101
Done112
Total3689377
Error
0.0b
Counts
377 → 9
Compiler

Compiled 9224 to 6701 computations (27.4% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.1b
(*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10))))
0.7b
(*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10)))) (/.f64 1 (sqrt.f64 (log.f64 10))))
1.0b
(/.f64 1 (log.f64 10))

rewrite239.0ms (2.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
47×times-frac_binary64_84
45×add-sqr-sqrt_binary64_100
44×associate-*r*_binary64_18
37×*-un-lft-identity_binary64_78
36×add-cube-cbrt_binary64_113
31×add-exp-log_binary64_116 sqrt-prod_binary64_94
21×pow1_binary64_139
19×add-cbrt-cube_binary64_114
13×prod-exp_binary64_127
10×log-pow_binary64_167
cbrt-unprod_binary64_111
div-exp_binary64_129
associate-/r*_binary64_22 pow-prod-down_binary64_149 associate-*r/_binary64_20 associate-*l*_binary64_19 unswap-sqr_binary64_46
1-exp_binary64_122 rec-exp_binary64_128 add-log-exp_binary64_117 cbrt-undiv_binary64_112 div-inv_binary64_75 associate-/l*_binary64_23 sqrt-div_binary64_95
*-commutative_binary64_9
inv-pow_binary64_163 pow-flip_binary64_152 frac-2neg_binary64_89 clear-num_binary64_77 frac-times_binary64_88 un-div-inv_binary64_76 associate-*l/_binary64_21
Counts
3 → 125
Calls

3 calls:

16.0ms
(*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10)))) (/.f64 1 (sqrt.f64 (log.f64 10))))
10.0ms
(*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10))))
4.0ms
(/.f64 1 (log.f64 10))
Compiler

Compiled 2913 to 2441 computations (16.2% saved)

series460.0ms (4.6%)

Error
0.0b
Counts
3 → 12
Calls

3 calls:

251.0ms
(*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10))))
201.0ms
(*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (/.f64 1 (log.f64 10)))) (/.f64 1 (sqrt.f64 (log.f64 10))))
0.0ms
(/.f64 1 (log.f64 10))
Compiler

Compiled 378 to 345 computations (8.7% saved)

simplify795.0ms (8%)

Algorithm
egg-herbie
Rules
429×*-commutative_binary64_9
290×div-sub_binary64_83
244×associate-/r/_binary64_24
217×associate-/r*_binary64_22
216×associate-*l*_binary64_19
210×sqr-pow_binary64_50
178×distribute-rgt-out--_binary64_32
159×sub-neg_binary64_71
158×distribute-rgt-neg-out_binary64_38
156×distribute-lft-neg-out_binary64_37
149×associate-*r*_binary64_18
130×log-prod_binary64_164
126×cube-prod_binary64_106
114×log-div_binary64_165
112×associate-*r/_binary64_20
109×unswap-sqr_binary64_46
106×exp-prod_binary64_130
103×cube-div_binary64_107
99×swap-sqr_binary64_45
98×pow-sqr_binary64_51
91×associate-/l*_binary64_23
81×cancel-sign-sub-inv_binary64_44
75×associate-*l/_binary64_21
72×unsub-neg_binary64_72
70×associate-+l-_binary64_13
68×associate-/l/_binary64_25
59×*-rgt-identity_binary64_68 distribute-rgt-neg-in_binary64_36
57×associate--l-_binary64_16
51×associate--r-_binary64_17
48×distribute-frac-neg_binary64_41
46×*-lft-identity_binary64_67
41×neg-mul-1_binary64_74 distribute-lft-neg-in_binary64_35
40×times-frac_binary64_84
38×associate--r+_binary64_14
37×/-rgt-identity_binary64_69
34×associate-+r-_binary64_12
30×unpow3_binary64_144
29×exp-sum_binary64_124 cube-mult_binary64_108
28×associate--l+_binary64_15
27×exp-to-pow_binary64_140 sub0-neg_binary64_65 distribute-neg-in_binary64_39
25×distribute-rgt-in_binary64_28
24×neg-sub0_binary64_73 distribute-neg-out_binary64_40
23×pow-plus_binary64_141
21×associate-+r+_binary64_10
18×rem-sqrt-square_binary64_91 associate-+l+_binary64_11
17×distribute-lft-in_binary64_27
16×log-rec_binary64_166 distribute-neg-frac_binary64_42
14×log-pow_binary64_167 exp-diff_binary64_126 +-commutative_binary64_8
13×distribute-rgt1-in_binary64_34
11×cube-unmult_binary64_115 +-lft-identity_binary64_62
10×distribute-rgt-out_binary64_31
mul0-rgt_binary64_61 mul0-lft_binary64_60
distribute-lft-out--_binary64_30
pow-base-1_binary64_138 remove-double-neg_binary64_66 count-2_binary64_26
sqr-neg_binary64_92 +-inverses_binary64_57
rem-square-sqrt_binary64_90 div0_binary64_59 distribute-lft-out_binary64_29
div-exp_binary64_129 rec-exp_binary64_128 prod-exp_binary64_127 1-exp_binary64_122 exp-1-e_binary64_121 rem-log-exp_binary64_119 rem-exp-log_binary64_118 cube-neg_binary64_105 rem-cbrt-cube_binary64_102 sqr-abs_binary64_93 *-inverses_binary64_58 rgt-mult-inverse_binary64_55 remove-double-div_binary64_54 cancel-sign-sub_binary64_43
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_341 erf-erfc_binary64_340 erf-odd_binary64_339 if-if-and-not_binary64_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 not-gte_binary64_330 not-lte_binary64_329 not-gt_binary64_328 not-lt_binary64_327 gte-same_binary64_326 lte-same_binary64_325 gt-same_binary64_324 lt-same_binary64_323 sinh---cosh_binary64_270 sinh-+-cosh_binary64_269 sinh-cosh_binary64_268 tanh-def-c_binary64_267 tanh-def-b_binary64_266 tanh-def-a_binary64_265 cosh-def_binary64_264 sinh-def_binary64_263 tan-neg_binary64_210 cos-neg_binary64_209 sin-neg_binary64_208 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 hang-m-tan_binary64_204 hang-p-tan_binary64_203 hang-m0-tan_binary64_202 hang-p0-tan_binary64_201 hang-0m-tan_binary64_200 hang-0p-tan_binary64_199 tan-+PI/2_binary64_198 tan-+PI_binary64_197 tan-PI_binary64_196 tan-PI/3_binary64_195 tan-PI/4_binary64_194 tan-PI/6_binary64_193 cos-+PI/2_binary64_192 cos-+PI_binary64_191 cos-PI_binary64_190 cos-PI/2_binary64_189 cos-PI/3_binary64_188 cos-PI/4_binary64_187 cos-PI/6_binary64_186 sin-+PI/2_binary64_185 sin-+PI_binary64_184 sin-PI_binary64_183 sin-PI/2_binary64_182 sin-PI/3_binary64_181 sin-PI/4_binary64_180 sin-PI/6_binary64_179 sub-1-sin_binary64_178 sub-1-cos_binary64_177 -1-add-sin_binary64_176 -1-add-cos_binary64_175 1-sub-sin_binary64_174 1-sub-cos_binary64_173 cos-sin-sum_binary64_172 log-E_binary64_168 pow-base-0_binary64_162 unpow1/3_binary64_145 unpow2_binary64_143 unpow1/2_binary64_142 unpow0_binary64_137 unpow1_binary64_136 unpow-1_binary64_135 exp-lft-cube_binary64_134 exp-lft-sqr_binary64_133 exp-cbrt_binary64_132 exp-sqrt_binary64_131 exp-neg_binary64_125 e-exp-1_binary64_123 exp-0_binary64_120 rem-3cbrt-rft_binary64_104 rem-3cbrt-lft_binary64_103 rem-cube-cbrt_binary64_101 mul-1-neg_binary64_70 --rgt-identity_binary64_64 +-rgt-identity_binary64_63 lft-mult-inverse_binary64_56 difference-of-sqr--1_binary64_49 difference-of-sqr-1_binary64_48 difference-of-squares_binary64_47 distribute-lft1-in_binary64_33
Counts
137 → 342
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01732776
13792500
214402240
318882240
431342240

prune790.0ms (7.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New3411342
Fresh257
Picked011
Done011
Total3438351
Error
0.0b
Counts
351 → 8
Compiler

Compiled 8360 to 6946 computations (16.9% saved)

regimes567.0ms (5.7%)

Accuracy

Total 0.8b remaining (99.3%)

Threshold costs 0.8b (99.3%)

Compiler

Compiled 6168 to 4852 computations (21.3% saved)

bsearch0.0ms (0%)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_9
1-exp_binary64_122
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_338 if-if-and_binary64_337 if-if-or-not_binary64_336 if-if-or_binary64_335 if-not_binary64_334 if-same_binary64_333 if-false_binary64_332 if-true_binary64_331 tan-0_binary64_207 cos-0_binary64_206 sin-0_binary64_205 unpow1_binary64_136 e-exp-1_binary64_123 exp-1-e_binary64_121 exp-0_binary64_120 sqr-abs_binary64_93 sqr-neg_binary64_92 neg-mul-1_binary64_74 neg-sub0_binary64_73 unsub-neg_binary64_72 sub-neg_binary64_71 mul-1-neg_binary64_70 /-rgt-identity_binary64_69 *-rgt-identity_binary64_68 *-lft-identity_binary64_67 remove-double-neg_binary64_66 sub0-neg_binary64_65 --rgt-identity_binary64_64 +-rgt-identity_binary64_63 +-lft-identity_binary64_62 cancel-sign-sub-inv_binary64_44 cancel-sign-sub_binary64_43 distribute-neg-frac_binary64_42 distribute-frac-neg_binary64_41 distribute-neg-out_binary64_40 distribute-neg-in_binary64_39 distribute-rgt-neg-out_binary64_38 distribute-lft-neg-out_binary64_37 distribute-rgt-neg-in_binary64_36 distribute-lft-neg-in_binary64_35 +-commutative_binary64_8
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01324
11724
Proof
(* f64 (* f64 (atan2 f64 h0 h1) (sqrt f64 (/ f64 1 (log f64 10)))) (/ f64 1 (sqrt f64 (log f64 10))))

end0.0ms (0%)

sample2.0s (20.2%)

Algorithm
intervals
Results
292.0ms8000×body128valid
Compiler

Compiled 1528 to 1206 computations (21.1% saved)

Profiling

Loading profile data...