Details

Time bar (total: 15.6s)

analyze138.0ms (0.9%)

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
18.7%81.1%0.1%6
40.6%59.3%0.1%7
45.2%54.6%0.1%8
65.5%34.3%0.1%9
78%21.8%0.1%10
80%19.5%0.5%11
81.7%17.7%0.5%12
87.9%11.3%0.8%13
88.3%10.1%1.6%14
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample16.0ms (0.1%)

Algorithm
intervals
Results
6.0ms256×body128valid
0.0msbody128invalid
Compiler

Compiled 15 to 16 computations (-6.7% saved)

simplify1.9s (12.4%)

Algorithm
egg-herbie
Rules
238×div-sub_binary64_15087
119×exp-prod_binary64_15134
102×sub-neg_binary64_15075
63×cancel-sign-sub-inv_binary64_15048
62×associate-/l*_binary64_15027
56×times-frac_binary64_15088
50×associate-/l/_binary64_15029
37×associate-*r*_binary64_15022
36×neg-mul-1_binary64_15078
34×unsub-neg_binary64_15076
33×distribute-rgt-in_binary64_15032 associate-/r*_binary64_15026
31×associate-/r/_binary64_15028
28×distribute-rgt-out_binary64_15035
27×neg-sub0_binary64_15077
18×associate--r+_binary64_15018
17×distribute-rgt-out--_binary64_15036
16×distribute-neg-in_binary64_15043
14×*-commutative_binary64_15013
13×distribute-lft-in_binary64_15031 associate-+l-_binary64_15017 associate-+r-_binary64_15016 +-commutative_binary64_15012
12×associate-*r/_binary64_15024
11×distribute-lft-neg-in_binary64_15039 associate-+l+_binary64_15015
10×distribute-frac-neg_binary64_15045
associate-*l/_binary64_15025
sub0-neg_binary64_15069 distribute-neg-frac_binary64_15046
mul-1-neg_binary64_15074 distribute-rgt-neg-in_binary64_15040 associate--r-_binary64_15021 associate-+r+_binary64_15014
associate-*l*_binary64_15023
sqr-neg_binary64_15096 /-rgt-identity_binary64_15073 mul0-lft_binary64_15064 div0_binary64_15063
cube-unmult_binary64_15119 remove-double-neg_binary64_15070 +-rgt-identity_binary64_15067 distribute-rgt-neg-out_binary64_15042 distribute-lft-neg-out_binary64_15041 distribute-rgt1-in_binary64_15038
mul0-rgt_binary64_15065 *-inverses_binary64_15062 distribute-lft-out--_binary64_15034 distribute-lft-out_binary64_15033
*-lft-identity_binary64_15071 --rgt-identity_binary64_15068 +-lft-identity_binary64_15066 swap-sqr_binary64_15049 distribute-lft1-in_binary64_15037 count-2_binary64_15030 associate--l-_binary64_15020 associate--l+_binary64_15019
exp-lft-sqr_binary64_15137 exp-diff_binary64_15130 1-exp_binary64_15126 *-rgt-identity_binary64_15072
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_15345 erf-erfc_binary64_15344 erf-odd_binary64_15343 if-if-and-not_binary64_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 not-gte_binary64_15334 not-lte_binary64_15333 not-gt_binary64_15332 not-lt_binary64_15331 gte-same_binary64_15330 lte-same_binary64_15329 gt-same_binary64_15328 lt-same_binary64_15327 sinh---cosh_binary64_15274 sinh-+-cosh_binary64_15273 sinh-cosh_binary64_15272 tanh-def-c_binary64_15271 tanh-def-b_binary64_15270 tanh-def-a_binary64_15269 cosh-def_binary64_15268 sinh-def_binary64_15267 tan-neg_binary64_15214 cos-neg_binary64_15213 sin-neg_binary64_15212 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 hang-m-tan_binary64_15208 hang-p-tan_binary64_15207 hang-m0-tan_binary64_15206 hang-p0-tan_binary64_15205 hang-0m-tan_binary64_15204 hang-0p-tan_binary64_15203 tan-+PI/2_binary64_15202 tan-+PI_binary64_15201 tan-PI_binary64_15200 tan-PI/3_binary64_15199 tan-PI/4_binary64_15198 tan-PI/6_binary64_15197 cos-+PI/2_binary64_15196 cos-+PI_binary64_15195 cos-PI_binary64_15194 cos-PI/2_binary64_15193 cos-PI/3_binary64_15192 cos-PI/4_binary64_15191 cos-PI/6_binary64_15190 sin-+PI/2_binary64_15189 sin-+PI_binary64_15188 sin-PI_binary64_15187 sin-PI/2_binary64_15186 sin-PI/3_binary64_15185 sin-PI/4_binary64_15184 sin-PI/6_binary64_15183 sub-1-sin_binary64_15182 sub-1-cos_binary64_15181 -1-add-sin_binary64_15180 -1-add-cos_binary64_15179 1-sub-sin_binary64_15178 1-sub-cos_binary64_15177 cos-sin-sum_binary64_15176 log-E_binary64_15172 log-pow_binary64_15171 log-rec_binary64_15170 log-div_binary64_15169 log-prod_binary64_15168 pow-base-0_binary64_15166 unpow1/3_binary64_15149 unpow3_binary64_15148 unpow2_binary64_15147 unpow1/2_binary64_15146 pow-plus_binary64_15145 exp-to-pow_binary64_15144 pow-base-1_binary64_15142 unpow0_binary64_15141 unpow1_binary64_15140 unpow-1_binary64_15139 exp-lft-cube_binary64_15138 exp-cbrt_binary64_15136 exp-sqrt_binary64_15135 div-exp_binary64_15133 rec-exp_binary64_15132 prod-exp_binary64_15131 exp-neg_binary64_15129 exp-sum_binary64_15128 e-exp-1_binary64_15127 exp-1-e_binary64_15125 exp-0_binary64_15124 rem-log-exp_binary64_15123 rem-exp-log_binary64_15122 cube-mult_binary64_15112 cube-div_binary64_15111 cube-prod_binary64_15110 cube-neg_binary64_15109 rem-3cbrt-rft_binary64_15108 rem-3cbrt-lft_binary64_15107 rem-cbrt-cube_binary64_15106 rem-cube-cbrt_binary64_15105 sqr-abs_binary64_15097 rem-sqrt-square_binary64_15095 rem-square-sqrt_binary64_15094 +-inverses_binary64_15061 lft-mult-inverse_binary64_15060 rgt-mult-inverse_binary64_15059 remove-double-div_binary64_15058 pow-sqr_binary64_15055 sqr-pow_binary64_15054 difference-of-sqr--1_binary64_15053 difference-of-sqr-1_binary64_15052 difference-of-squares_binary64_15051 unswap-sqr_binary64_15050 cancel-sign-sub_binary64_15047 distribute-neg-out_binary64_15044
Counts
1 → 1
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
0710
11310
22110
33510
46110
510710
624710
78751
8171

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 8 to 10 computations (-25% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

0.0b
(/.f64 (-.f64 x y) (-.f64 z y))

rewrite57.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
0b
Rules
37×add-sqr-sqrt_binary64_15104 *-un-lft-identity_binary64_15082
25×times-frac_binary64_15088
13×add-cube-cbrt_binary64_15117
12×difference-of-squares_binary64_15051 distribute-lft-out--_binary64_15034
associate-/l*_binary64_15027 associate-/r*_binary64_15026
add-exp-log_binary64_15120 add-cbrt-cube_binary64_15118
flip3--_binary64_15086 associate-/l/_binary64_15029 flip--_binary64_15057 associate-/r/_binary64_15028
pow1_binary64_15143 div-exp_binary64_15133 add-log-exp_binary64_15121 cbrt-undiv_binary64_15116 frac-2neg_binary64_15093 div-sub_binary64_15087 clear-num_binary64_15081 div-inv_binary64_15079
Counts
1 → 52
Calls

1 calls:

9.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 844 to 193 computations (77.1% saved)

series283.0ms (1.8%)

Error
0.0b
Counts
1 → 24
Calls

1 calls:

256.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 1022 to 666 computations (34.8% saved)

simplify287.0ms (1.8%)

Algorithm
egg-herbie
Rules
483×sub-neg_binary64_15075
351×div-sub_binary64_15087
225×times-frac_binary64_15088
223×associate-/l*_binary64_15027
209×associate--l+_binary64_15019
184×associate--r+_binary64_15018
168×associate-+l+_binary64_15015
167×distribute-rgt-in_binary64_15032
165×associate-/r*_binary64_15026
157×unsub-neg_binary64_15076
146×distribute-lft-in_binary64_15031
135×associate-*r/_binary64_15024
123×+-commutative_binary64_15012
115×associate-*l/_binary64_15025
113×associate-*l*_binary64_15023
107×associate-/l/_binary64_15029
106×associate-+r+_binary64_15014
102×associate-/r/_binary64_15028
101×associate-*r*_binary64_15022
96×cancel-sign-sub-inv_binary64_15048
92×neg-sub0_binary64_15077
83×*-commutative_binary64_15013
76×neg-mul-1_binary64_15078
50×associate-+l-_binary64_15017
44×associate-+r-_binary64_15016
37×distribute-neg-in_binary64_15043
32×distribute-neg-frac_binary64_15046
27×sqr-pow_binary64_15054
24×cube-prod_binary64_15110
23×log-prod_binary64_15168
18×distribute-rgt-neg-in_binary64_15040
17×log-div_binary64_15169 distribute-lft-neg-out_binary64_15041 distribute-lft-neg-in_binary64_15039
16×cube-div_binary64_15111
15×distribute-rgt-neg-out_binary64_15042
13×pow-plus_binary64_15145
12×pow-sqr_binary64_15055
11×cube-unmult_binary64_15119 *-rgt-identity_binary64_15072
div-exp_binary64_15133 prod-exp_binary64_15131
/-rgt-identity_binary64_15073 associate--l-_binary64_15020
exp-diff_binary64_15130 difference-of-squares_binary64_15051 distribute-rgt-out_binary64_15035
distribute-rgt1-in_binary64_15038
exp-prod_binary64_15134 distribute-rgt-out--_binary64_15036 associate--r-_binary64_15021
log-pow_binary64_15171 rec-exp_binary64_15132 exp-sum_binary64_15128 swap-sqr_binary64_15049
unpow3_binary64_15148 unpow2_binary64_15147 unpow1_binary64_15140 cube-mult_binary64_15112 sqr-neg_binary64_15096 rem-sqrt-square_binary64_15095 mul-1-neg_binary64_15074 *-inverses_binary64_15062 distribute-lft-out_binary64_15033
log-rec_binary64_15170 exp-to-pow_binary64_15144 1-exp_binary64_15126 rem-log-exp_binary64_15123 cube-neg_binary64_15109 *-lft-identity_binary64_15071 remove-double-neg_binary64_15070 div0_binary64_15063
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_15345 erf-erfc_binary64_15344 erf-odd_binary64_15343 if-if-and-not_binary64_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 not-gte_binary64_15334 not-lte_binary64_15333 not-gt_binary64_15332 not-lt_binary64_15331 gte-same_binary64_15330 lte-same_binary64_15329 gt-same_binary64_15328 lt-same_binary64_15327 sinh---cosh_binary64_15274 sinh-+-cosh_binary64_15273 sinh-cosh_binary64_15272 tanh-def-c_binary64_15271 tanh-def-b_binary64_15270 tanh-def-a_binary64_15269 cosh-def_binary64_15268 sinh-def_binary64_15267 tan-neg_binary64_15214 cos-neg_binary64_15213 sin-neg_binary64_15212 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 hang-m-tan_binary64_15208 hang-p-tan_binary64_15207 hang-m0-tan_binary64_15206 hang-p0-tan_binary64_15205 hang-0m-tan_binary64_15204 hang-0p-tan_binary64_15203 tan-+PI/2_binary64_15202 tan-+PI_binary64_15201 tan-PI_binary64_15200 tan-PI/3_binary64_15199 tan-PI/4_binary64_15198 tan-PI/6_binary64_15197 cos-+PI/2_binary64_15196 cos-+PI_binary64_15195 cos-PI_binary64_15194 cos-PI/2_binary64_15193 cos-PI/3_binary64_15192 cos-PI/4_binary64_15191 cos-PI/6_binary64_15190 sin-+PI/2_binary64_15189 sin-+PI_binary64_15188 sin-PI_binary64_15187 sin-PI/2_binary64_15186 sin-PI/3_binary64_15185 sin-PI/4_binary64_15184 sin-PI/6_binary64_15183 sub-1-sin_binary64_15182 sub-1-cos_binary64_15181 -1-add-sin_binary64_15180 -1-add-cos_binary64_15179 1-sub-sin_binary64_15178 1-sub-cos_binary64_15177 cos-sin-sum_binary64_15176 log-E_binary64_15172 pow-base-0_binary64_15166 unpow1/3_binary64_15149 unpow1/2_binary64_15146 pow-base-1_binary64_15142 unpow0_binary64_15141 unpow-1_binary64_15139 exp-lft-cube_binary64_15138 exp-lft-sqr_binary64_15137 exp-cbrt_binary64_15136 exp-sqrt_binary64_15135 exp-neg_binary64_15129 e-exp-1_binary64_15127 exp-1-e_binary64_15125 exp-0_binary64_15124 rem-exp-log_binary64_15122 rem-3cbrt-rft_binary64_15108 rem-3cbrt-lft_binary64_15107 rem-cbrt-cube_binary64_15106 rem-cube-cbrt_binary64_15105 sqr-abs_binary64_15097 rem-square-sqrt_binary64_15094 sub0-neg_binary64_15069 --rgt-identity_binary64_15068 +-rgt-identity_binary64_15067 +-lft-identity_binary64_15066 mul0-rgt_binary64_15065 mul0-lft_binary64_15064 +-inverses_binary64_15061 lft-mult-inverse_binary64_15060 rgt-mult-inverse_binary64_15059 remove-double-div_binary64_15058 difference-of-sqr--1_binary64_15053 difference-of-sqr-1_binary64_15052 unswap-sqr_binary64_15050 cancel-sign-sub_binary64_15047 distribute-frac-neg_binary64_15045 distribute-neg-out_binary64_15044 distribute-lft1-in_binary64_15037 distribute-lft-out--_binary64_15034 count-2_binary64_15030
Counts
76 → 74
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01431678
13691618
211371537
339441537

prune84.0ms (0.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New72274
Fresh000
Picked011
Done000
Total72375
Error
0.0b
Counts
75 → 3
Compiler

Compiled 1628 to 497 computations (69.5% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 (-.f64 z y) (+.f64 y x))
3.5b
(-.f64 (*.f64 x x) (*.f64 y y))
27.6b
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 z y) (+.f64 y x)))

rewrite111.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
11×add-sqr-sqrt_binary64_15104 *-un-lft-identity_binary64_15082
10×add-exp-log_binary64_15120 add-cbrt-cube_binary64_15118
flip3--_binary64_15086 flip--_binary64_15057 frac-times_binary64_15092 associate-/r/_binary64_15028
add-cube-cbrt_binary64_15117
flip3-+_binary64_15085 flip-+_binary64_15056
pow1_binary64_15143 add-log-exp_binary64_15121 associate-*l*_binary64_15023
times-frac_binary64_15088 difference-of-squares_binary64_15051 associate-*l/_binary64_15025 associate-*r/_binary64_15024 associate-/l*_binary64_15027 associate-*r*_binary64_15022
prod-exp_binary64_15131 div-exp_binary64_15133 cbrt-undiv_binary64_15116 cbrt-unprod_binary64_15115 associate-/l/_binary64_15029
frac-2neg_binary64_15093 div-sub_binary64_15087 clear-num_binary64_15081 div-inv_binary64_15079 associate-/r*_binary64_15026 diff-log_binary64_15174 sub-neg_binary64_15075 cancel-sign-sub-inv_binary64_15048 pow-prod-down_binary64_15153 unswap-sqr_binary64_15050 distribute-rgt-in_binary64_15032 distribute-lft-in_binary64_15031 distribute-lft-out--_binary64_15034 distribute-lft-out_binary64_15033 *-commutative_binary64_15013
Counts
3 → 78
Calls

3 calls:

13.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 z y) (+.f64 y x)))
10.0ms
(*.f64 (-.f64 z y) (+.f64 y x))
4.0ms
(-.f64 (*.f64 x x) (*.f64 y y))
Compiler

Compiled 1994 to 343 computations (82.8% saved)

series1.1s (6.9%)

Error
0.0b
Counts
3 → 55
Calls

3 calls:

611.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 z y) (+.f64 y x)))
250.0ms
(*.f64 (-.f64 z y) (+.f64 y x))
150.0ms
(-.f64 (*.f64 x x) (*.f64 y y))
Compiler

Compiled 3685 to 2204 computations (40.2% saved)

simplify541.0ms (3.5%)

Algorithm
egg-herbie
Rules
360×times-frac_binary64_15088
252×associate-/r*_binary64_15026
225×cancel-sign-sub-inv_binary64_15048
218×associate-/l*_binary64_15027
194×div-sub_binary64_15087 associate-*l*_binary64_15023
185×sub-neg_binary64_15075
178×associate-*r*_binary64_15022
147×distribute-rgt-in_binary64_15032
137×distribute-lft-in_binary64_15031
118×unswap-sqr_binary64_15050
96×distribute-neg-frac_binary64_15046 *-commutative_binary64_15013
94×distribute-rgt-neg-in_binary64_15040
86×+-commutative_binary64_15012
84×sqr-pow_binary64_15054
81×distribute-neg-in_binary64_15043
66×neg-sub0_binary64_15077
63×neg-mul-1_binary64_15078
58×distribute-lft-neg-out_binary64_15041
51×associate-+l+_binary64_15015
50×associate--l+_binary64_15019
49×distribute-rgt-neg-out_binary64_15042
45×unsub-neg_binary64_15076
44×exp-prod_binary64_15134 associate-+r+_binary64_15014
43×pow-sqr_binary64_15055
41×associate--r+_binary64_15018
30×associate-*l/_binary64_15025
27×pow-plus_binary64_15145
26×difference-of-squares_binary64_15051 associate-*r/_binary64_15024
25×exp-sum_binary64_15128
20×associate-/r/_binary64_15028
18×log-prod_binary64_15168 cube-prod_binary64_15110
17×*-lft-identity_binary64_15071 distribute-lft-neg-in_binary64_15039
16×*-rgt-identity_binary64_15072
15×/-rgt-identity_binary64_15073
log-div_binary64_15169 exp-diff_binary64_15130
unpow3_binary64_15148 cube-unmult_binary64_15119 swap-sqr_binary64_15049
cube-mult_binary64_15112 distribute-rgt-out_binary64_15035
unpow2_binary64_15147 unpow1_binary64_15140 associate-+r-_binary64_15016
+-rgt-identity_binary64_15067
cube-div_binary64_15111 mul-1-neg_binary64_15074 *-inverses_binary64_15062
div-exp_binary64_15133 remove-double-neg_binary64_15070 div0_binary64_15063 distribute-rgt-out--_binary64_15036
exp-sqrt_binary64_15135 rec-exp_binary64_15132 prod-exp_binary64_15131 1-exp_binary64_15126 exp-1-e_binary64_15125 rem-log-exp_binary64_15123 distribute-frac-neg_binary64_15045 associate--r-_binary64_15021 associate-+l-_binary64_15017
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_15345 erf-erfc_binary64_15344 erf-odd_binary64_15343 if-if-and-not_binary64_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 not-gte_binary64_15334 not-lte_binary64_15333 not-gt_binary64_15332 not-lt_binary64_15331 gte-same_binary64_15330 lte-same_binary64_15329 gt-same_binary64_15328 lt-same_binary64_15327 sinh---cosh_binary64_15274 sinh-+-cosh_binary64_15273 sinh-cosh_binary64_15272 tanh-def-c_binary64_15271 tanh-def-b_binary64_15270 tanh-def-a_binary64_15269 cosh-def_binary64_15268 sinh-def_binary64_15267 tan-neg_binary64_15214 cos-neg_binary64_15213 sin-neg_binary64_15212 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 hang-m-tan_binary64_15208 hang-p-tan_binary64_15207 hang-m0-tan_binary64_15206 hang-p0-tan_binary64_15205 hang-0m-tan_binary64_15204 hang-0p-tan_binary64_15203 tan-+PI/2_binary64_15202 tan-+PI_binary64_15201 tan-PI_binary64_15200 tan-PI/3_binary64_15199 tan-PI/4_binary64_15198 tan-PI/6_binary64_15197 cos-+PI/2_binary64_15196 cos-+PI_binary64_15195 cos-PI_binary64_15194 cos-PI/2_binary64_15193 cos-PI/3_binary64_15192 cos-PI/4_binary64_15191 cos-PI/6_binary64_15190 sin-+PI/2_binary64_15189 sin-+PI_binary64_15188 sin-PI_binary64_15187 sin-PI/2_binary64_15186 sin-PI/3_binary64_15185 sin-PI/4_binary64_15184 sin-PI/6_binary64_15183 sub-1-sin_binary64_15182 sub-1-cos_binary64_15181 -1-add-sin_binary64_15180 -1-add-cos_binary64_15179 1-sub-sin_binary64_15178 1-sub-cos_binary64_15177 cos-sin-sum_binary64_15176 log-E_binary64_15172 log-pow_binary64_15171 log-rec_binary64_15170 pow-base-0_binary64_15166 unpow1/3_binary64_15149 unpow1/2_binary64_15146 exp-to-pow_binary64_15144 pow-base-1_binary64_15142 unpow0_binary64_15141 unpow-1_binary64_15139 exp-lft-cube_binary64_15138 exp-lft-sqr_binary64_15137 exp-cbrt_binary64_15136 exp-neg_binary64_15129 e-exp-1_binary64_15127 exp-0_binary64_15124 rem-exp-log_binary64_15122 cube-neg_binary64_15109 rem-3cbrt-rft_binary64_15108 rem-3cbrt-lft_binary64_15107 rem-cbrt-cube_binary64_15106 rem-cube-cbrt_binary64_15105 sqr-abs_binary64_15097 sqr-neg_binary64_15096 rem-sqrt-square_binary64_15095 rem-square-sqrt_binary64_15094 sub0-neg_binary64_15069 --rgt-identity_binary64_15068 +-lft-identity_binary64_15066 mul0-rgt_binary64_15065 mul0-lft_binary64_15064 +-inverses_binary64_15061 lft-mult-inverse_binary64_15060 rgt-mult-inverse_binary64_15059 remove-double-div_binary64_15058 difference-of-sqr--1_binary64_15053 difference-of-sqr-1_binary64_15052 cancel-sign-sub_binary64_15047 distribute-neg-out_binary64_15044 distribute-rgt1-in_binary64_15038 distribute-lft1-in_binary64_15037 distribute-lft-out--_binary64_15034 distribute-lft-out_binary64_15033 count-2_binary64_15030 associate-/l/_binary64_15029 associate--l-_binary64_15020
Counts
133 → 250
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02453363
17803020
239332796

prune295.0ms (1.9%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2491250
Fresh011
Picked011
Done011
Total2494253
Error
0b
Counts
253 → 4
Compiler

Compiled 7310 to 1664 computations (77.2% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (+.f64 x y) (/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x))))
0.0b
(/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x)))
0.0b
(/.f64 (-.f64 x y) (+.f64 y x))

rewrite1.4s (9.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
1960×times-frac_binary64_15088
1788×*-un-lft-identity_binary64_15082
1194×add-sqr-sqrt_binary64_15104
622×add-cube-cbrt_binary64_15117
297×distribute-lft-out_binary64_15033
286×difference-of-squares_binary64_15051 distribute-lft-out--_binary64_15034
165×associate-/r*_binary64_15026
71×associate-/r/_binary64_15028
39×div-inv_binary64_15079
33×flip3-+_binary64_15085 flip-+_binary64_15056
19×add-exp-log_binary64_15120 add-cbrt-cube_binary64_15118
14×associate-/l*_binary64_15027
10×div-exp_binary64_15133 cbrt-undiv_binary64_15116
associate-/l/_binary64_15029
pow1_binary64_15143 add-log-exp_binary64_15121 frac-2neg_binary64_15093 clear-num_binary64_15081
div-sub_binary64_15087 flip3--_binary64_15086 flip--_binary64_15057
Counts
3 → 923
Calls

3 calls:

49.0ms
(/.f64 (+.f64 x y) (/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x))))
18.0ms
(/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x)))
9.0ms
(/.f64 (-.f64 x y) (+.f64 y x))
Compiler

Compiled 30904 to 4916 computations (84.1% saved)

series735.0ms (4.7%)

Error
0b
Counts
3 → 63
Calls

3 calls:

333.0ms
(/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x)))
233.0ms
(/.f64 (+.f64 x y) (/.f64 (-.f64 z y) (/.f64 (-.f64 x y) (+.f64 y x))))
105.0ms
(/.f64 (-.f64 x y) (+.f64 y x))
Compiler

Compiled 2977 to 1878 computations (36.9% saved)

simplify3.1s (20.1%)

Algorithm
egg-herbie
Rules
812×times-frac_binary64_15088
605×associate-/r/_binary64_15028
538×associate-/r*_binary64_15026
221×distribute-rgt-in_binary64_15032
217×distribute-lft-in_binary64_15031
145×div-sub_binary64_15087
143×sub-neg_binary64_15075
111×associate-/l*_binary64_15027
39×+-commutative_binary64_15012
32×neg-sub0_binary64_15077
31×cancel-sign-sub-inv_binary64_15048
30×*-commutative_binary64_15013
29×neg-mul-1_binary64_15078
28×distribute-neg-in_binary64_15043
19×associate-*r/_binary64_15024
18×/-rgt-identity_binary64_15073 remove-double-div_binary64_15058 associate--l+_binary64_15019
16×sqr-pow_binary64_15054
15×associate--r+_binary64_15018
13×associate-+r+_binary64_15014
11×distribute-neg-frac_binary64_15046 distribute-rgt-neg-in_binary64_15040
10×unswap-sqr_binary64_15050
pow-sqr_binary64_15055
log-div_binary64_15169 cube-unmult_binary64_15119 distribute-lft-neg-in_binary64_15039 associate-/l/_binary64_15029 associate-*l/_binary64_15025 associate-*l*_binary64_15023
distribute-rgt-out_binary64_15035
log-prod_binary64_15168 *-inverses_binary64_15062 swap-sqr_binary64_15049
mul-1-neg_binary64_15074 difference-of-squares_binary64_15051 distribute-lft-neg-out_binary64_15041 distribute-rgt-out--_binary64_15036
unpow3_binary64_15148 unpow2_binary64_15147 pow-plus_binary64_15145 cube-mult_binary64_15112
exp-prod_binary64_15134 exp-diff_binary64_15130 unsub-neg_binary64_15076 associate--r-_binary64_15021 associate-+r-_binary64_15016
log-rec_binary64_15170 div-exp_binary64_15133 rec-exp_binary64_15132 prod-exp_binary64_15131 1-exp_binary64_15126
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_15345 erf-erfc_binary64_15344 erf-odd_binary64_15343 if-if-and-not_binary64_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 not-gte_binary64_15334 not-lte_binary64_15333 not-gt_binary64_15332 not-lt_binary64_15331 gte-same_binary64_15330 lte-same_binary64_15329 gt-same_binary64_15328 lt-same_binary64_15327 sinh---cosh_binary64_15274 sinh-+-cosh_binary64_15273 sinh-cosh_binary64_15272 tanh-def-c_binary64_15271 tanh-def-b_binary64_15270 tanh-def-a_binary64_15269 cosh-def_binary64_15268 sinh-def_binary64_15267 tan-neg_binary64_15214 cos-neg_binary64_15213 sin-neg_binary64_15212 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 hang-m-tan_binary64_15208 hang-p-tan_binary64_15207 hang-m0-tan_binary64_15206 hang-p0-tan_binary64_15205 hang-0m-tan_binary64_15204 hang-0p-tan_binary64_15203 tan-+PI/2_binary64_15202 tan-+PI_binary64_15201 tan-PI_binary64_15200 tan-PI/3_binary64_15199 tan-PI/4_binary64_15198 tan-PI/6_binary64_15197 cos-+PI/2_binary64_15196 cos-+PI_binary64_15195 cos-PI_binary64_15194 cos-PI/2_binary64_15193 cos-PI/3_binary64_15192 cos-PI/4_binary64_15191 cos-PI/6_binary64_15190 sin-+PI/2_binary64_15189 sin-+PI_binary64_15188 sin-PI_binary64_15187 sin-PI/2_binary64_15186 sin-PI/3_binary64_15185 sin-PI/4_binary64_15184 sin-PI/6_binary64_15183 sub-1-sin_binary64_15182 sub-1-cos_binary64_15181 -1-add-sin_binary64_15180 -1-add-cos_binary64_15179 1-sub-sin_binary64_15178 1-sub-cos_binary64_15177 cos-sin-sum_binary64_15176 log-E_binary64_15172 log-pow_binary64_15171 pow-base-0_binary64_15166 unpow1/3_binary64_15149 unpow1/2_binary64_15146 exp-to-pow_binary64_15144 pow-base-1_binary64_15142 unpow0_binary64_15141 unpow1_binary64_15140 unpow-1_binary64_15139 exp-lft-cube_binary64_15138 exp-lft-sqr_binary64_15137 exp-cbrt_binary64_15136 exp-sqrt_binary64_15135 exp-neg_binary64_15129 exp-sum_binary64_15128 e-exp-1_binary64_15127 exp-1-e_binary64_15125 exp-0_binary64_15124 rem-log-exp_binary64_15123 rem-exp-log_binary64_15122 cube-div_binary64_15111 cube-prod_binary64_15110 cube-neg_binary64_15109 rem-3cbrt-rft_binary64_15108 rem-3cbrt-lft_binary64_15107 rem-cbrt-cube_binary64_15106 rem-cube-cbrt_binary64_15105 sqr-abs_binary64_15097 sqr-neg_binary64_15096 rem-sqrt-square_binary64_15095 rem-square-sqrt_binary64_15094 *-rgt-identity_binary64_15072 *-lft-identity_binary64_15071 remove-double-neg_binary64_15070 sub0-neg_binary64_15069 --rgt-identity_binary64_15068 +-rgt-identity_binary64_15067 +-lft-identity_binary64_15066 mul0-rgt_binary64_15065 mul0-lft_binary64_15064 div0_binary64_15063 +-inverses_binary64_15061 lft-mult-inverse_binary64_15060 rgt-mult-inverse_binary64_15059 difference-of-sqr--1_binary64_15053 difference-of-sqr-1_binary64_15052 cancel-sign-sub_binary64_15047 distribute-frac-neg_binary64_15045 distribute-neg-out_binary64_15044 distribute-rgt-neg-out_binary64_15042 distribute-rgt1-in_binary64_15038 distribute-lft1-in_binary64_15037 distribute-lft-out--_binary64_15034 distribute-lft-out_binary64_15033 count-2_binary64_15030 associate-*r*_binary64_15022 associate--l-_binary64_15020 associate-+l-_binary64_15017 associate-+l+_binary64_15015
Counts
986 → 3416
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
093341750
1231737926

prune4.4s (28%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New341603416
Fresh011
Picked011
Done022
Total341643420
Error
0b
Counts
3420 → 4
Compiler

Compiled 116339 to 10924 computations (90.6% saved)

localize4.0ms (0%)

rewrite0.0ms (0%)

Algorithm
rewrite-expression-head
Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

series0.0ms (0%)

Error
0b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

simplify8.0ms (0.1%)

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_15345 erf-erfc_binary64_15344 erf-odd_binary64_15343 if-if-and-not_binary64_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 not-gte_binary64_15334 not-lte_binary64_15333 not-gt_binary64_15332 not-lt_binary64_15331 gte-same_binary64_15330 lte-same_binary64_15329 gt-same_binary64_15328 lt-same_binary64_15327 sinh---cosh_binary64_15274 sinh-+-cosh_binary64_15273 sinh-cosh_binary64_15272 tanh-def-c_binary64_15271 tanh-def-b_binary64_15270 tanh-def-a_binary64_15269 cosh-def_binary64_15268 sinh-def_binary64_15267 tan-neg_binary64_15214 cos-neg_binary64_15213 sin-neg_binary64_15212 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 hang-m-tan_binary64_15208 hang-p-tan_binary64_15207 hang-m0-tan_binary64_15206 hang-p0-tan_binary64_15205 hang-0m-tan_binary64_15204 hang-0p-tan_binary64_15203 tan-+PI/2_binary64_15202 tan-+PI_binary64_15201 tan-PI_binary64_15200 tan-PI/3_binary64_15199 tan-PI/4_binary64_15198 tan-PI/6_binary64_15197 cos-+PI/2_binary64_15196 cos-+PI_binary64_15195 cos-PI_binary64_15194 cos-PI/2_binary64_15193 cos-PI/3_binary64_15192 cos-PI/4_binary64_15191 cos-PI/6_binary64_15190 sin-+PI/2_binary64_15189 sin-+PI_binary64_15188 sin-PI_binary64_15187 sin-PI/2_binary64_15186 sin-PI/3_binary64_15185 sin-PI/4_binary64_15184 sin-PI/6_binary64_15183 sub-1-sin_binary64_15182 sub-1-cos_binary64_15181 -1-add-sin_binary64_15180 -1-add-cos_binary64_15179 1-sub-sin_binary64_15178 1-sub-cos_binary64_15177 cos-sin-sum_binary64_15176 log-E_binary64_15172 log-pow_binary64_15171 log-rec_binary64_15170 log-div_binary64_15169 log-prod_binary64_15168 pow-base-0_binary64_15166 unpow1/3_binary64_15149 unpow3_binary64_15148 unpow2_binary64_15147 unpow1/2_binary64_15146 pow-plus_binary64_15145 exp-to-pow_binary64_15144 pow-base-1_binary64_15142 unpow0_binary64_15141 unpow1_binary64_15140 unpow-1_binary64_15139 exp-lft-cube_binary64_15138 exp-lft-sqr_binary64_15137 exp-cbrt_binary64_15136 exp-sqrt_binary64_15135 exp-prod_binary64_15134 div-exp_binary64_15133 rec-exp_binary64_15132 prod-exp_binary64_15131 exp-diff_binary64_15130 exp-neg_binary64_15129 exp-sum_binary64_15128 e-exp-1_binary64_15127 1-exp_binary64_15126 exp-1-e_binary64_15125 exp-0_binary64_15124 rem-log-exp_binary64_15123 rem-exp-log_binary64_15122 cube-unmult_binary64_15119 cube-mult_binary64_15112 cube-div_binary64_15111 cube-prod_binary64_15110 cube-neg_binary64_15109 rem-3cbrt-rft_binary64_15108 rem-3cbrt-lft_binary64_15107 rem-cbrt-cube_binary64_15106 rem-cube-cbrt_binary64_15105 sqr-abs_binary64_15097 sqr-neg_binary64_15096 rem-sqrt-square_binary64_15095 rem-square-sqrt_binary64_15094 times-frac_binary64_15088 div-sub_binary64_15087 neg-mul-1_binary64_15078 neg-sub0_binary64_15077 unsub-neg_binary64_15076 sub-neg_binary64_15075 mul-1-neg_binary64_15074 /-rgt-identity_binary64_15073 *-rgt-identity_binary64_15072 *-lft-identity_binary64_15071 remove-double-neg_binary64_15070 sub0-neg_binary64_15069 --rgt-identity_binary64_15068 +-rgt-identity_binary64_15067 +-lft-identity_binary64_15066 mul0-rgt_binary64_15065 mul0-lft_binary64_15064 div0_binary64_15063 *-inverses_binary64_15062 +-inverses_binary64_15061 lft-mult-inverse_binary64_15060 rgt-mult-inverse_binary64_15059 remove-double-div_binary64_15058 pow-sqr_binary64_15055 sqr-pow_binary64_15054 difference-of-sqr--1_binary64_15053 difference-of-sqr-1_binary64_15052 difference-of-squares_binary64_15051 unswap-sqr_binary64_15050 swap-sqr_binary64_15049 cancel-sign-sub-inv_binary64_15048 cancel-sign-sub_binary64_15047 distribute-neg-frac_binary64_15046 distribute-frac-neg_binary64_15045 distribute-neg-out_binary64_15044 distribute-neg-in_binary64_15043 distribute-rgt-neg-out_binary64_15042 distribute-lft-neg-out_binary64_15041 distribute-rgt-neg-in_binary64_15040 distribute-lft-neg-in_binary64_15039 distribute-rgt1-in_binary64_15038 distribute-lft1-in_binary64_15037 distribute-rgt-out--_binary64_15036 distribute-rgt-out_binary64_15035 distribute-lft-out--_binary64_15034 distribute-lft-out_binary64_15033 distribute-rgt-in_binary64_15032 distribute-lft-in_binary64_15031 count-2_binary64_15030 associate-/l/_binary64_15029 associate-/r/_binary64_15028 associate-/l*_binary64_15027 associate-/r*_binary64_15026 associate-*l/_binary64_15025 associate-*r/_binary64_15024 associate-*l*_binary64_15023 associate-*r*_binary64_15022 associate--r-_binary64_15021 associate--l-_binary64_15020 associate--l+_binary64_15019 associate--r+_binary64_15018 associate-+l-_binary64_15017 associate-+r-_binary64_15016 associate-+l+_binary64_15015 associate-+r+_binary64_15014 *-commutative_binary64_15013 +-commutative_binary64_15012
Counts
0 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000

prune1.0ms (0%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done033
Total044
Error
0b
Counts
4 → 4
Compiler

Compiled 0 to 0 computations (0% saved)

regimes216.0ms (1.4%)

Accuracy

Total 0.0b remaining (90.5%)

Threshold costs 0.0b (90.5%)

Compiler

Compiled 1301 to 1068 computations (17.9% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
sub-neg_binary64_15075 +-commutative_binary64_15012
neg-mul-1_binary64_15078 neg-sub0_binary64_15077 *-commutative_binary64_15013
distribute-neg-frac_binary64_15046
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_15342 if-if-and_binary64_15341 if-if-or-not_binary64_15340 if-if-or_binary64_15339 if-not_binary64_15338 if-same_binary64_15337 if-false_binary64_15336 if-true_binary64_15335 tan-0_binary64_15211 cos-0_binary64_15210 sin-0_binary64_15209 unpow1_binary64_15140 e-exp-1_binary64_15127 1-exp_binary64_15126 exp-1-e_binary64_15125 exp-0_binary64_15124 sqr-abs_binary64_15097 sqr-neg_binary64_15096 unsub-neg_binary64_15076 mul-1-neg_binary64_15074 /-rgt-identity_binary64_15073 *-rgt-identity_binary64_15072 *-lft-identity_binary64_15071 remove-double-neg_binary64_15070 sub0-neg_binary64_15069 --rgt-identity_binary64_15068 +-rgt-identity_binary64_15067 +-lft-identity_binary64_15066 cancel-sign-sub-inv_binary64_15048 cancel-sign-sub_binary64_15047 distribute-frac-neg_binary64_15045 distribute-neg-out_binary64_15044 distribute-neg-in_binary64_15043 distribute-rgt-neg-out_binary64_15042 distribute-lft-neg-out_binary64_15041 distribute-rgt-neg-in_binary64_15040 distribute-lft-neg-in_binary64_15039
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0816
11216
22116
32516
42716
Proof
(- f64 (/ f64 h0 (- f64 h1 h2)) (/ f64 h2 (- f64 h1 h2)))

end0.0ms (0%)

sample864.0ms (5.5%)

Algorithm
intervals
Results
205.0ms8000×body128valid
5.0ms230×body128invalid
Compiler

Compiled 342 to 274 computations (19.9% saved)

Profiling

Loading profile data...