Details

Time bar (total: 7.7s)

analyze929.0ms (12.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
4.7%95.1%0.2%10
12.7%87.1%0.2%11
15.9%83.9%0.2%12
18.4%81.3%0.2%13
29.5%70.3%0.2%14
Compiler

Compiled 12 to 11 computations (8.3% saved)

sample24.0ms (0.3%)

Algorithm
intervals
Results
9.0ms256×body128valid
1.0ms15×body128invalid
Compiler

Compiled 23 to 26 computations (-13% saved)

simplify648.0ms (8.5%)

Algorithm
egg-herbie
Rules
870×associate-/l/_binary64_10937
743×associate-/l*_binary64_10935
703×times-frac_binary64_10996
246×cancel-sign-sub-inv_binary64_10956
229×div-sub_binary64_10995
181×distribute-rgt-out_binary64_10943
132×distribute-rgt-out--_binary64_10944
116×associate-/r/_binary64_10936
113×distribute-rgt-in_binary64_10940
93×sub-neg_binary64_10983
84×distribute-lft-out_binary64_10941
81×distribute-lft-in_binary64_10939
69×distribute-lft-out--_binary64_10942
45×unsub-neg_binary64_10984
43×distribute-frac-neg_binary64_10953
39×neg-mul-1_binary64_10986
34×neg-sub0_binary64_10985 distribute-neg-in_binary64_10951
31×distribute-rgt-neg-in_binary64_10948 distribute-lft-neg-in_binary64_10947
29×distribute-neg-frac_binary64_10954
24×distribute-rgt-neg-out_binary64_10950 distribute-lft-neg-out_binary64_10949 *-commutative_binary64_10921
21×+-commutative_binary64_10920
18×associate-+r-_binary64_10924
17×associate-/r*_binary64_10934
15×associate--r+_binary64_10926 associate-+l-_binary64_10925
11×distribute-rgt1-in_binary64_10946 associate-*r*_binary64_10930
10×sub0-neg_binary64_10977 associate-+l+_binary64_10923 associate-+r+_binary64_10922
+-rgt-identity_binary64_10975 div0_binary64_10971
associate-*l/_binary64_10933 associate-*l*_binary64_10931
swap-sqr_binary64_10957 associate-*r/_binary64_10932
remove-double-neg_binary64_10978 --rgt-identity_binary64_10976
sqr-neg_binary64_11004 mul0-lft_binary64_10972 *-inverses_binary64_10970 distribute-neg-out_binary64_10952 distribute-lft1-in_binary64_10945 count-2_binary64_10938 associate--r-_binary64_10929
+-lft-identity_binary64_10974 mul0-rgt_binary64_10973 associate--l+_binary64_10927
1-exp_binary64_11034 mul-1-neg_binary64_10982 associate--l-_binary64_10928
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_11253 erf-erfc_binary64_11252 erf-odd_binary64_11251 if-if-and-not_binary64_11250 if-if-and_binary64_11249 if-if-or-not_binary64_11248 if-if-or_binary64_11247 if-not_binary64_11246 if-same_binary64_11245 if-false_binary64_11244 if-true_binary64_11243 not-gte_binary64_11242 not-lte_binary64_11241 not-gt_binary64_11240 not-lt_binary64_11239 gte-same_binary64_11238 lte-same_binary64_11237 gt-same_binary64_11236 lt-same_binary64_11235 sinh---cosh_binary64_11182 sinh-+-cosh_binary64_11181 sinh-cosh_binary64_11180 tanh-def-c_binary64_11179 tanh-def-b_binary64_11178 tanh-def-a_binary64_11177 cosh-def_binary64_11176 sinh-def_binary64_11175 tan-neg_binary64_11122 cos-neg_binary64_11121 sin-neg_binary64_11120 tan-0_binary64_11119 cos-0_binary64_11118 sin-0_binary64_11117 hang-m-tan_binary64_11116 hang-p-tan_binary64_11115 hang-m0-tan_binary64_11114 hang-p0-tan_binary64_11113 hang-0m-tan_binary64_11112 hang-0p-tan_binary64_11111 tan-+PI/2_binary64_11110 tan-+PI_binary64_11109 tan-PI_binary64_11108 tan-PI/3_binary64_11107 tan-PI/4_binary64_11106 tan-PI/6_binary64_11105 cos-+PI/2_binary64_11104 cos-+PI_binary64_11103 cos-PI_binary64_11102 cos-PI/2_binary64_11101 cos-PI/3_binary64_11100 cos-PI/4_binary64_11099 cos-PI/6_binary64_11098 sin-+PI/2_binary64_11097 sin-+PI_binary64_11096 sin-PI_binary64_11095 sin-PI/2_binary64_11094 sin-PI/3_binary64_11093 sin-PI/4_binary64_11092 sin-PI/6_binary64_11091 sub-1-sin_binary64_11090 sub-1-cos_binary64_11089 -1-add-sin_binary64_11088 -1-add-cos_binary64_11087 1-sub-sin_binary64_11086 1-sub-cos_binary64_11085 cos-sin-sum_binary64_11084 log-E_binary64_11080 log-pow_binary64_11079 log-rec_binary64_11078 log-div_binary64_11077 log-prod_binary64_11076 pow-base-0_binary64_11074 unpow1/3_binary64_11057 unpow3_binary64_11056 unpow2_binary64_11055 unpow1/2_binary64_11054 pow-plus_binary64_11053 exp-to-pow_binary64_11052 pow-base-1_binary64_11050 unpow0_binary64_11049 unpow1_binary64_11048 unpow-1_binary64_11047 exp-lft-cube_binary64_11046 exp-lft-sqr_binary64_11045 exp-cbrt_binary64_11044 exp-sqrt_binary64_11043 exp-prod_binary64_11042 div-exp_binary64_11041 rec-exp_binary64_11040 prod-exp_binary64_11039 exp-diff_binary64_11038 exp-neg_binary64_11037 exp-sum_binary64_11036 e-exp-1_binary64_11035 exp-1-e_binary64_11033 exp-0_binary64_11032 rem-log-exp_binary64_11031 rem-exp-log_binary64_11030 cube-unmult_binary64_11027 cube-mult_binary64_11020 cube-div_binary64_11019 cube-prod_binary64_11018 cube-neg_binary64_11017 rem-3cbrt-rft_binary64_11016 rem-3cbrt-lft_binary64_11015 rem-cbrt-cube_binary64_11014 rem-cube-cbrt_binary64_11013 sqr-abs_binary64_11005 rem-sqrt-square_binary64_11003 rem-square-sqrt_binary64_11002 /-rgt-identity_binary64_10981 *-rgt-identity_binary64_10980 *-lft-identity_binary64_10979 +-inverses_binary64_10969 lft-mult-inverse_binary64_10968 rgt-mult-inverse_binary64_10967 remove-double-div_binary64_10966 pow-sqr_binary64_10963 sqr-pow_binary64_10962 difference-of-sqr--1_binary64_10961 difference-of-sqr-1_binary64_10960 difference-of-squares_binary64_10959 unswap-sqr_binary64_10958 cancel-sign-sub_binary64_10955
Counts
1 → 3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01116
11816
24016
37816
414616
526516
663216

prune14.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New033
Fresh101
Picked000
Done000
Total134
Error
0b
Counts
4 → 3
Compiler

Compiled 66 to 46 computations (30.3% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(/.f64 (-.f64 a z) (-.f64 y z))
2.3b
(/.f64 t (/.f64 (-.f64 a z) (-.f64 y z)))

rewrite239.0ms (3.1%)

Algorithm
rewrite-expression-head
Error
0b
Rules
218×times-frac_binary64_10996
194×add-sqr-sqrt_binary64_11012 *-un-lft-identity_binary64_10990
90×add-cube-cbrt_binary64_11025
52×difference-of-squares_binary64_10959 distribute-lft-out--_binary64_10942
36×associate-/r*_binary64_10934
11×associate-/r/_binary64_10936
add-exp-log_binary64_11028 add-cbrt-cube_binary64_11026
associate-/l*_binary64_10935
div-inv_binary64_10987 flip3--_binary64_10994 flip--_binary64_10965
div-exp_binary64_11041 cbrt-undiv_binary64_11024
pow1_binary64_11051 add-log-exp_binary64_11029 frac-2neg_binary64_11001 clear-num_binary64_10989 associate-/l/_binary64_10937
div-sub_binary64_10995
Counts
2 → 194
Calls

2 calls:

13.0ms
(/.f64 t (/.f64 (-.f64 a z) (-.f64 y z)))
8.0ms
(/.f64 (-.f64 a z) (-.f64 y z))
Compiler

Compiled 4537 to 1005 computations (77.8% saved)

series626.0ms (8.2%)

Error
0b
Counts
2 → 42
Calls

2 calls:

346.0ms
(/.f64 t (/.f64 (-.f64 a z) (-.f64 y z)))
243.0ms
(/.f64 (-.f64 a z) (-.f64 y z))
Compiler

Compiled 2019 to 1306 computations (35.3% saved)

simplify452.0ms (5.9%)

Algorithm
egg-herbie
Rules
388×distribute-rgt-in_binary64_10940
362×distribute-lft-in_binary64_10939
258×associate-/r/_binary64_10936
247×associate-/l*_binary64_10935
236×associate-/l/_binary64_10937
158×associate-*l/_binary64_10933
155×*-commutative_binary64_10921
151×cancel-sign-sub-inv_binary64_10956
142×sub-neg_binary64_10983
125×associate--l+_binary64_10927
113×times-frac_binary64_10996
106×div-sub_binary64_10995
93×associate-+l+_binary64_10923
79×associate--r+_binary64_10926
78×associate-*r/_binary64_10932
72×associate-/r*_binary64_10934
65×*-rgt-identity_binary64_10980
60×/-rgt-identity_binary64_10981
57×associate-*r*_binary64_10930 +-commutative_binary64_10920
56×distribute-neg-frac_binary64_10954
55×associate-+l-_binary64_10925
54×neg-sub0_binary64_10985
53×distribute-lft-neg-out_binary64_10949
51×distribute-rgt-neg-out_binary64_10950 associate-+r-_binary64_10924
49×neg-mul-1_binary64_10986
43×distribute-rgt-neg-in_binary64_10948
42×associate-*l*_binary64_10931
40×distribute-lft-neg-in_binary64_10947
27×distribute-neg-in_binary64_10951
26×sqr-pow_binary64_10962
22×unsub-neg_binary64_10984
18×log-div_binary64_11077
17×*-lft-identity_binary64_10979
16×div-exp_binary64_11041 prod-exp_binary64_11039 distribute-rgt-out_binary64_10943
12×unswap-sqr_binary64_10958
11×log-prod_binary64_11076 pow-sqr_binary64_10963
10×distribute-rgt-out--_binary64_10944 associate-+r+_binary64_10922
cube-div_binary64_11019 distribute-rgt1-in_binary64_10946 associate--r-_binary64_10929
swap-sqr_binary64_10957 distribute-lft-out_binary64_10941
pow-plus_binary64_11053 cube-unmult_binary64_11027 difference-of-squares_binary64_10959
exp-prod_binary64_11042 cube-prod_binary64_11018 mul-1-neg_binary64_10982 distribute-lft-out--_binary64_10942
associate--l-_binary64_10928
rec-exp_binary64_11040 exp-sum_binary64_11036 remove-double-div_binary64_10966
unpow2_binary64_11055 unpow1_binary64_11048 remove-double-neg_binary64_10978
unpow3_binary64_11056 exp-diff_binary64_11038 cube-mult_binary64_11020 div0_binary64_10971 *-inverses_binary64_10970
log-pow_binary64_11079 log-rec_binary64_11078 1-exp_binary64_11034 rem-log-exp_binary64_11031 distribute-lft1-in_binary64_10945 count-2_binary64_10938
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_11253 erf-erfc_binary64_11252 erf-odd_binary64_11251 if-if-and-not_binary64_11250 if-if-and_binary64_11249 if-if-or-not_binary64_11248 if-if-or_binary64_11247 if-not_binary64_11246 if-same_binary64_11245 if-false_binary64_11244 if-true_binary64_11243 not-gte_binary64_11242 not-lte_binary64_11241 not-gt_binary64_11240 not-lt_binary64_11239 gte-same_binary64_11238 lte-same_binary64_11237 gt-same_binary64_11236 lt-same_binary64_11235 sinh---cosh_binary64_11182 sinh-+-cosh_binary64_11181 sinh-cosh_binary64_11180 tanh-def-c_binary64_11179 tanh-def-b_binary64_11178 tanh-def-a_binary64_11177 cosh-def_binary64_11176 sinh-def_binary64_11175 tan-neg_binary64_11122 cos-neg_binary64_11121 sin-neg_binary64_11120 tan-0_binary64_11119 cos-0_binary64_11118 sin-0_binary64_11117 hang-m-tan_binary64_11116 hang-p-tan_binary64_11115 hang-m0-tan_binary64_11114 hang-p0-tan_binary64_11113 hang-0m-tan_binary64_11112 hang-0p-tan_binary64_11111 tan-+PI/2_binary64_11110 tan-+PI_binary64_11109 tan-PI_binary64_11108 tan-PI/3_binary64_11107 tan-PI/4_binary64_11106 tan-PI/6_binary64_11105 cos-+PI/2_binary64_11104 cos-+PI_binary64_11103 cos-PI_binary64_11102 cos-PI/2_binary64_11101 cos-PI/3_binary64_11100 cos-PI/4_binary64_11099 cos-PI/6_binary64_11098 sin-+PI/2_binary64_11097 sin-+PI_binary64_11096 sin-PI_binary64_11095 sin-PI/2_binary64_11094 sin-PI/3_binary64_11093 sin-PI/4_binary64_11092 sin-PI/6_binary64_11091 sub-1-sin_binary64_11090 sub-1-cos_binary64_11089 -1-add-sin_binary64_11088 -1-add-cos_binary64_11087 1-sub-sin_binary64_11086 1-sub-cos_binary64_11085 cos-sin-sum_binary64_11084 log-E_binary64_11080 pow-base-0_binary64_11074 unpow1/3_binary64_11057 unpow1/2_binary64_11054 exp-to-pow_binary64_11052 pow-base-1_binary64_11050 unpow0_binary64_11049 unpow-1_binary64_11047 exp-lft-cube_binary64_11046 exp-lft-sqr_binary64_11045 exp-cbrt_binary64_11044 exp-sqrt_binary64_11043 exp-neg_binary64_11037 e-exp-1_binary64_11035 exp-1-e_binary64_11033 exp-0_binary64_11032 rem-exp-log_binary64_11030 cube-neg_binary64_11017 rem-3cbrt-rft_binary64_11016 rem-3cbrt-lft_binary64_11015 rem-cbrt-cube_binary64_11014 rem-cube-cbrt_binary64_11013 sqr-abs_binary64_11005 sqr-neg_binary64_11004 rem-sqrt-square_binary64_11003 rem-square-sqrt_binary64_11002 sub0-neg_binary64_10977 --rgt-identity_binary64_10976 +-rgt-identity_binary64_10975 +-lft-identity_binary64_10974 mul0-rgt_binary64_10973 mul0-lft_binary64_10972 +-inverses_binary64_10969 lft-mult-inverse_binary64_10968 rgt-mult-inverse_binary64_10967 difference-of-sqr--1_binary64_10961 difference-of-sqr-1_binary64_10960 cancel-sign-sub_binary64_10955 distribute-frac-neg_binary64_10953 distribute-neg-out_binary64_10952
Counts
236 → 762
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03495786
18175615
231745500

prune739.0ms (9.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New7620762
Fresh022
Picked011
Done000
Total7623765
Error
0b
Counts
765 → 3
Compiler

Compiled 19141 to 2646 computations (86.2% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

13.1b
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) t))

rewrite172.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
185×times-frac_binary64_10996
151×add-sqr-sqrt_binary64_11012 *-un-lft-identity_binary64_10990
75×add-cube-cbrt_binary64_11025
38×difference-of-squares_binary64_10959 distribute-lft-out--_binary64_10942
19×associate-/r*_binary64_10934
div-inv_binary64_10987
add-exp-log_binary64_11028 add-cbrt-cube_binary64_11026
associate-/l*_binary64_10935
div-exp_binary64_11041 cbrt-undiv_binary64_11024
associate-/l/_binary64_10937
pow1_binary64_11051 add-log-exp_binary64_11029 frac-2neg_binary64_11001 div-sub_binary64_10995 clear-num_binary64_10989 flip3--_binary64_10994 flip--_binary64_10965 associate-/r/_binary64_10936
Counts
1 → 137
Calls

1 calls:

12.0ms
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) t))
Compiler

Compiled 3310 to 718 computations (78.3% saved)

series362.0ms (4.7%)

Error
0b
Counts
1 → 21
Calls

1 calls:

345.0ms
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) t))
Compiler

Compiled 962 to 596 computations (38% saved)

simplify365.0ms (4.8%)

Algorithm
egg-herbie
Rules
473×associate-/r*_binary64_10934
456×*-commutative_binary64_10921
366×associate-*l*_binary64_10931
352×associate-*r*_binary64_10930
303×associate-/r/_binary64_10936
254×div-sub_binary64_10995
187×associate-/l*_binary64_10935
174×distribute-lft-in_binary64_10939
171×associate-/l/_binary64_10937
167×distribute-rgt-in_binary64_10940
134×cancel-sign-sub-inv_binary64_10956
129×associate-*l/_binary64_10933
118×sub-neg_binary64_10983
99×+-commutative_binary64_10920
81×times-frac_binary64_10996 associate-*r/_binary64_10932
75×distribute-neg-frac_binary64_10954
69×neg-sub0_binary64_10985
66×neg-mul-1_binary64_10986 distribute-rgt-neg-in_binary64_10948
64×distribute-lft-neg-in_binary64_10947
44×/-rgt-identity_binary64_10981
41×*-rgt-identity_binary64_10980 associate--l+_binary64_10927
37×associate-+l+_binary64_10923
26×associate-+r+_binary64_10922
25×associate-+l-_binary64_10925
24×associate-+r-_binary64_10924
19×associate--r+_binary64_10926
16×div-exp_binary64_11041 prod-exp_binary64_11039
13×log-div_binary64_11077 sqr-pow_binary64_10962
12×unswap-sqr_binary64_10958 distribute-rgt-out--_binary64_10944
11×distribute-neg-in_binary64_10951
10×distribute-lft-neg-out_binary64_10949
exp-prod_binary64_11042 distribute-rgt-neg-out_binary64_10950
unsub-neg_binary64_10984
distribute-lft-out_binary64_10941
cube-unmult_binary64_11027 cube-div_binary64_11019 *-lft-identity_binary64_10979 swap-sqr_binary64_10957 distribute-rgt-out_binary64_10943 distribute-lft-out--_binary64_10942 associate--r-_binary64_10929
log-prod_binary64_11076 pow-sqr_binary64_10963
rec-exp_binary64_11040 exp-sum_binary64_11036 cube-prod_binary64_11018 mul-1-neg_binary64_10982
remove-double-div_binary64_10966 distribute-rgt1-in_binary64_10946
unpow2_binary64_11055 unpow1_binary64_11048 exp-diff_binary64_11038 remove-double-neg_binary64_10978 *-inverses_binary64_10970 associate--l-_binary64_10928
log-pow_binary64_11079 log-rec_binary64_11078 pow-plus_binary64_11053 1-exp_binary64_11034 rem-log-exp_binary64_11031 sub0-neg_binary64_10977 count-2_binary64_10938
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_11253 erf-erfc_binary64_11252 erf-odd_binary64_11251 if-if-and-not_binary64_11250 if-if-and_binary64_11249 if-if-or-not_binary64_11248 if-if-or_binary64_11247 if-not_binary64_11246 if-same_binary64_11245 if-false_binary64_11244 if-true_binary64_11243 not-gte_binary64_11242 not-lte_binary64_11241 not-gt_binary64_11240 not-lt_binary64_11239 gte-same_binary64_11238 lte-same_binary64_11237 gt-same_binary64_11236 lt-same_binary64_11235 sinh---cosh_binary64_11182 sinh-+-cosh_binary64_11181 sinh-cosh_binary64_11180 tanh-def-c_binary64_11179 tanh-def-b_binary64_11178 tanh-def-a_binary64_11177 cosh-def_binary64_11176 sinh-def_binary64_11175 tan-neg_binary64_11122 cos-neg_binary64_11121 sin-neg_binary64_11120 tan-0_binary64_11119 cos-0_binary64_11118 sin-0_binary64_11117 hang-m-tan_binary64_11116 hang-p-tan_binary64_11115 hang-m0-tan_binary64_11114 hang-p0-tan_binary64_11113 hang-0m-tan_binary64_11112 hang-0p-tan_binary64_11111 tan-+PI/2_binary64_11110 tan-+PI_binary64_11109 tan-PI_binary64_11108 tan-PI/3_binary64_11107 tan-PI/4_binary64_11106 tan-PI/6_binary64_11105 cos-+PI/2_binary64_11104 cos-+PI_binary64_11103 cos-PI_binary64_11102 cos-PI/2_binary64_11101 cos-PI/3_binary64_11100 cos-PI/4_binary64_11099 cos-PI/6_binary64_11098 sin-+PI/2_binary64_11097 sin-+PI_binary64_11096 sin-PI_binary64_11095 sin-PI/2_binary64_11094 sin-PI/3_binary64_11093 sin-PI/4_binary64_11092 sin-PI/6_binary64_11091 sub-1-sin_binary64_11090 sub-1-cos_binary64_11089 -1-add-sin_binary64_11088 -1-add-cos_binary64_11087 1-sub-sin_binary64_11086 1-sub-cos_binary64_11085 cos-sin-sum_binary64_11084 log-E_binary64_11080 pow-base-0_binary64_11074 unpow1/3_binary64_11057 unpow3_binary64_11056 unpow1/2_binary64_11054 exp-to-pow_binary64_11052 pow-base-1_binary64_11050 unpow0_binary64_11049 unpow-1_binary64_11047 exp-lft-cube_binary64_11046 exp-lft-sqr_binary64_11045 exp-cbrt_binary64_11044 exp-sqrt_binary64_11043 exp-neg_binary64_11037 e-exp-1_binary64_11035 exp-1-e_binary64_11033 exp-0_binary64_11032 rem-exp-log_binary64_11030 cube-mult_binary64_11020 cube-neg_binary64_11017 rem-3cbrt-rft_binary64_11016 rem-3cbrt-lft_binary64_11015 rem-cbrt-cube_binary64_11014 rem-cube-cbrt_binary64_11013 sqr-abs_binary64_11005 sqr-neg_binary64_11004 rem-sqrt-square_binary64_11003 rem-square-sqrt_binary64_11002 --rgt-identity_binary64_10976 +-rgt-identity_binary64_10975 +-lft-identity_binary64_10974 mul0-rgt_binary64_10973 mul0-lft_binary64_10972 div0_binary64_10971 +-inverses_binary64_10969 lft-mult-inverse_binary64_10968 rgt-mult-inverse_binary64_10967 difference-of-sqr--1_binary64_10961 difference-of-sqr-1_binary64_10960 difference-of-squares_binary64_10959 cancel-sign-sub_binary64_10955 distribute-frac-neg_binary64_10953 distribute-neg-out_binary64_10952 distribute-lft1-in_binary64_10945
Counts
158 → 610
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02784423
17564186
223844129

prune581.0ms (7.6%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New6100610
Fresh011
Picked011
Done011
Total6103613
Error
0b
Counts
613 → 3
Compiler

Compiled 15380 to 1910 computations (87.6% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

0.0b
(/.f64 t (-.f64 a z))
13.0b
(*.f64 (-.f64 y z) (/.f64 t (-.f64 a z)))

rewrite97.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
0b
Rules
43×add-sqr-sqrt_binary64_11012
38×*-un-lft-identity_binary64_10990
31×times-frac_binary64_10996
22×add-cube-cbrt_binary64_11025
21×associate-*r*_binary64_10930
add-exp-log_binary64_11028 add-cbrt-cube_binary64_11026
difference-of-squares_binary64_10959 distribute-lft-out--_binary64_10942
associate-*l*_binary64_10931 associate-/r*_binary64_10934
pow1_binary64_11051 flip3--_binary64_10994 flip--_binary64_10965 associate-/r/_binary64_10936
associate-/l*_binary64_10935
div-exp_binary64_11041 prod-exp_binary64_11039 add-log-exp_binary64_11029 cbrt-unprod_binary64_11023 cbrt-undiv_binary64_11024 frac-times_binary64_11000 unswap-sqr_binary64_10958 associate-*l/_binary64_10933 div-inv_binary64_10987
pow-prod-down_binary64_11061 associate-*r/_binary64_10932 *-commutative_binary64_10921 frac-2neg_binary64_11001 clear-num_binary64_10989
Counts
2 → 83
Calls

2 calls:

14.0ms
(*.f64 (-.f64 y z) (/.f64 t (-.f64 a z)))
5.0ms
(/.f64 t (-.f64 a z))
Compiler

Compiled 1622 to 406 computations (75% saved)

series476.0ms (6.2%)

Error
0b
Counts
2 → 33
Calls

2 calls:

341.0ms
(*.f64 (-.f64 y z) (/.f64 t (-.f64 a z)))
111.0ms
(/.f64 t (-.f64 a z))
Compiler

Compiled 1424 to 909 computations (36.2% saved)

simplify186.0ms (2.4%)

Algorithm
egg-herbie
Rules
511×associate-/l*_binary64_10935
460×associate-*l/_binary64_10933
421×times-frac_binary64_10996
279×distribute-rgt-in_binary64_10940
269×distribute-lft-in_binary64_10939
251×associate-/l/_binary64_10937
205×associate-/r/_binary64_10936
182×associate-/r*_binary64_10934
103×cancel-sign-sub-inv_binary64_10956
83×associate-*l*_binary64_10931
82×div-sub_binary64_10995
71×associate-*r*_binary64_10930
68×sub-neg_binary64_10983
65×associate-*r/_binary64_10932
60×*-commutative_binary64_10921
35×+-commutative_binary64_10920
32×distribute-rgt-neg-out_binary64_10950 distribute-lft-neg-out_binary64_10949
31×distribute-rgt-neg-in_binary64_10948
30×sqr-pow_binary64_10962
29×*-rgt-identity_binary64_10980 distribute-lft-neg-in_binary64_10947
28×distribute-neg-frac_binary64_10954
26×neg-sub0_binary64_10985
23×*-lft-identity_binary64_10979 associate--l+_binary64_10927
22×neg-mul-1_binary64_10986
15×log-div_binary64_11077
14×log-prod_binary64_11076
12×/-rgt-identity_binary64_10981
11×pow-sqr_binary64_10963 difference-of-squares_binary64_10959 associate-+l+_binary64_10923
10×exp-prod_binary64_11042 associate--r+_binary64_10926
div-exp_binary64_11041 prod-exp_binary64_11039 unsub-neg_binary64_10984
distribute-neg-in_binary64_10951
pow-plus_binary64_11053 exp-sum_binary64_11036 cube-unmult_binary64_11027 cube-div_binary64_11019 mul-1-neg_binary64_10982 distribute-lft-out--_binary64_10942 distribute-lft-out_binary64_10941
cube-prod_binary64_11018 swap-sqr_binary64_10957 distribute-rgt-out--_binary64_10944 distribute-rgt-out_binary64_10943
unswap-sqr_binary64_10958 distribute-rgt1-in_binary64_10946 associate-+r+_binary64_10922
unpow3_binary64_11056 rec-exp_binary64_11040 exp-diff_binary64_11038 cube-mult_binary64_11020
log-rec_binary64_11078 unpow2_binary64_11055 unpow1_binary64_11048 *-inverses_binary64_10970
exp-sqrt_binary64_11043 1-exp_binary64_11034 exp-1-e_binary64_11033 rem-log-exp_binary64_11031 remove-double-neg_binary64_10978 div0_binary64_10971 associate--r-_binary64_10929 associate-+l-_binary64_10925 associate-+r-_binary64_10924
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_11253 erf-erfc_binary64_11252 erf-odd_binary64_11251 if-if-and-not_binary64_11250 if-if-and_binary64_11249 if-if-or-not_binary64_11248 if-if-or_binary64_11247 if-not_binary64_11246 if-same_binary64_11245 if-false_binary64_11244 if-true_binary64_11243 not-gte_binary64_11242 not-lte_binary64_11241 not-gt_binary64_11240 not-lt_binary64_11239 gte-same_binary64_11238 lte-same_binary64_11237 gt-same_binary64_11236 lt-same_binary64_11235 sinh---cosh_binary64_11182 sinh-+-cosh_binary64_11181 sinh-cosh_binary64_11180 tanh-def-c_binary64_11179 tanh-def-b_binary64_11178 tanh-def-a_binary64_11177 cosh-def_binary64_11176 sinh-def_binary64_11175 tan-neg_binary64_11122 cos-neg_binary64_11121 sin-neg_binary64_11120 tan-0_binary64_11119 cos-0_binary64_11118 sin-0_binary64_11117 hang-m-tan_binary64_11116 hang-p-tan_binary64_11115 hang-m0-tan_binary64_11114 hang-p0-tan_binary64_11113 hang-0m-tan_binary64_11112 hang-0p-tan_binary64_11111 tan-+PI/2_binary64_11110 tan-+PI_binary64_11109 tan-PI_binary64_11108 tan-PI/3_binary64_11107 tan-PI/4_binary64_11106 tan-PI/6_binary64_11105 cos-+PI/2_binary64_11104 cos-+PI_binary64_11103 cos-PI_binary64_11102 cos-PI/2_binary64_11101 cos-PI/3_binary64_11100 cos-PI/4_binary64_11099 cos-PI/6_binary64_11098 sin-+PI/2_binary64_11097 sin-+PI_binary64_11096 sin-PI_binary64_11095 sin-PI/2_binary64_11094 sin-PI/3_binary64_11093 sin-PI/4_binary64_11092 sin-PI/6_binary64_11091 sub-1-sin_binary64_11090 sub-1-cos_binary64_11089 -1-add-sin_binary64_11088 -1-add-cos_binary64_11087 1-sub-sin_binary64_11086 1-sub-cos_binary64_11085 cos-sin-sum_binary64_11084 log-E_binary64_11080 log-pow_binary64_11079 pow-base-0_binary64_11074 unpow1/3_binary64_11057 unpow1/2_binary64_11054 exp-to-pow_binary64_11052 pow-base-1_binary64_11050 unpow0_binary64_11049 unpow-1_binary64_11047 exp-lft-cube_binary64_11046 exp-lft-sqr_binary64_11045 exp-cbrt_binary64_11044 exp-neg_binary64_11037 e-exp-1_binary64_11035 exp-0_binary64_11032 rem-exp-log_binary64_11030 cube-neg_binary64_11017 rem-3cbrt-rft_binary64_11016 rem-3cbrt-lft_binary64_11015 rem-cbrt-cube_binary64_11014 rem-cube-cbrt_binary64_11013 sqr-abs_binary64_11005 sqr-neg_binary64_11004 rem-sqrt-square_binary64_11003 rem-square-sqrt_binary64_11002 sub0-neg_binary64_10977 --rgt-identity_binary64_10976 +-rgt-identity_binary64_10975 +-lft-identity_binary64_10974 mul0-rgt_binary64_10973 mul0-lft_binary64_10972 +-inverses_binary64_10969 lft-mult-inverse_binary64_10968 rgt-mult-inverse_binary64_10967 remove-double-div_binary64_10966 difference-of-sqr--1_binary64_10961 difference-of-sqr-1_binary64_10960 cancel-sign-sub_binary64_10955 distribute-frac-neg_binary64_10953 distribute-neg-out_binary64_10952 distribute-lft1-in_binary64_10945 count-2_binary64_10938 associate--l-_binary64_10928
Counts
116 → 164
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01861937
14301826
215721682

prune133.0ms (1.7%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1640164
Fresh000
Picked011
Done022
Total1643167
Error
0b
Counts
167 → 3
Compiler

Compiled 3078 to 559 computations (81.8% saved)

regimes360.0ms (4.7%)

Accuracy

Total 0.2b remaining (95%)

Threshold costs 0.2b (95%)

Compiler

Compiled 1618 to 1733 computations (-7.1% saved)

bsearch1.0ms (0%)

Compiler

Compiled 9 to 9 computations (0% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64_10920
sub-neg_binary64_10983 *-commutative_binary64_10921
neg-mul-1_binary64_10986 neg-sub0_binary64_10985
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_11250 if-if-and_binary64_11249 if-if-or-not_binary64_11248 if-if-or_binary64_11247 if-not_binary64_11246 if-same_binary64_11245 if-false_binary64_11244 if-true_binary64_11243 tan-0_binary64_11119 cos-0_binary64_11118 sin-0_binary64_11117 unpow1_binary64_11048 e-exp-1_binary64_11035 1-exp_binary64_11034 exp-1-e_binary64_11033 exp-0_binary64_11032 sqr-abs_binary64_11005 sqr-neg_binary64_11004 unsub-neg_binary64_10984 mul-1-neg_binary64_10982 /-rgt-identity_binary64_10981 *-rgt-identity_binary64_10980 *-lft-identity_binary64_10979 remove-double-neg_binary64_10978 sub0-neg_binary64_10977 --rgt-identity_binary64_10976 +-rgt-identity_binary64_10975 +-lft-identity_binary64_10974 cancel-sign-sub-inv_binary64_10956 cancel-sign-sub_binary64_10955 distribute-neg-frac_binary64_10954 distribute-frac-neg_binary64_10953 distribute-neg-out_binary64_10952 distribute-neg-in_binary64_10951 distribute-rgt-neg-out_binary64_10950 distribute-lft-neg-out_binary64_10949 distribute-rgt-neg-in_binary64_10948 distribute-lft-neg-in_binary64_10947
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02484
13284
23884
34084
44184
Proof
(if real (<= f64 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)) h4) (+ f64 h5 (* f64 (- f64 h0 h1) (/ f64 h2 (- f64 h3 h1)))) (if real (<= f64 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)) 16768013427489210176761085969548068955506835181885431816994557619446387037183770269130413711821824823639708881825007209892271227213840602914119472044232236621822426809801645741368654506550951891730221632609123917942311751758732708449332434698380227766593026050128494856760639020123900984148668255830016) (=> (+ f64 h5 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)))) (+ f64 h5 (/ f64 h2 (/ f64 (- f64 h3 h1) (- f64 h0 h1)))))) +-commutative_binary64_10920 => (if real (<= f64 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)) h4) (+ f64 h5 (* f64 (- f64 h0 h1) (/ f64 h2 (- f64 h3 h1)))) (if real (<= f64 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)) 16768013427489210176761085969548068955506835181885431816994557619446387037183770269130413711821824823639708881825007209892271227213840602914119472044232236621822426809801645741368654506550951891730221632609123917942311751758732708449332434698380227766593026050128494856760639020123900984148668255830016) (+ f64 (/ f64 (* f64 (- f64 h0 h1) h2) (- f64 h3 h1)) h5) (+ f64 h5 (/ f64 h2 (/ f64 (- f64 h3 h1) (- f64 h0 h1))))))

end0.0ms (0%)

sample1.2s (16.1%)

Algorithm
intervals
Results
303.0ms7997×body128valid
24.0ms719×body128invalid
0.0msbody1024valid
0.0msbody512valid
Compiler

Compiled 334 to 292 computations (12.6% saved)

Profiling

Loading profile data...