Details

Time bar (total: 12.5s)

analyze641.0ms (5.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
17.2%82.7%0.2%9
22.6%77.2%0.2%10
25.7%74.1%0.2%11
28.3%69.9%1.9%12
40.1%55.3%4.6%13
44.4%49.9%5.8%14
Compiler

Compiled 10 to 9 computations (10% saved)

sample23.0ms (0.2%)

Algorithm
intervals
Results
8.0ms256×body128valid
2.0ms63×body128invalid
Compiler

Compiled 19 to 21 computations (-10.5% saved)

simplify1.3s (10.6%)

Algorithm
egg-herbie
Rules
966×exp-prod_binary64_24000
886×swap-sqr_binary64_23915
314×distribute-rgt-out_binary64_23901
280×associate-*l*_binary64_23889
279×associate-*r*_binary64_23888
272×associate-/l*_binary64_23893
265×sub-neg_binary64_23941
237×distribute-rgt-out--_binary64_23902
225×distribute-lft-out_binary64_23899
207×distribute-lft-out--_binary64_23900
163×cancel-sign-sub-inv_binary64_23914
115×associate-/l/_binary64_23895
66×div-sub_binary64_23953
64×unsub-neg_binary64_23942
63×associate-*l/_binary64_23891
60×times-frac_binary64_23954
59×distribute-rgt-in_binary64_23898
53×associate-*r/_binary64_23890
51×associate-/r*_binary64_23892
47×neg-mul-1_binary64_23944
45×neg-sub0_binary64_23943
34×distribute-rgt-neg-in_binary64_23906
33×distribute-lft-neg-in_binary64_23905
31×*-commutative_binary64_23879
28×associate-/r/_binary64_23894
25×distribute-neg-in_binary64_23909 distribute-lft-in_binary64_23897
24×+-commutative_binary64_23878
21×associate--r+_binary64_23884
20×sqr-pow_binary64_23920
18×associate-+l-_binary64_23883
15×pow-plus_binary64_24011 +-inverses_binary64_23927 distribute-rgt1-in_binary64_23904 associate-+r+_binary64_23880
14×associate-+r-_binary64_23882
12×sub0-neg_binary64_23935
11×distribute-neg-frac_binary64_23912 distribute-rgt-neg-out_binary64_23908 distribute-lft-neg-out_binary64_23907 associate-+l+_binary64_23881
exp-sum_binary64_23994 remove-double-neg_binary64_23936 +-rgt-identity_binary64_23933 unswap-sqr_binary64_23916
cube-unmult_binary64_23985 mul0-lft_binary64_23930 pow-sqr_binary64_23921
difference-of-squares_binary64_23917 distribute-frac-neg_binary64_23911
distribute-lft1-in_binary64_23903 associate--l+_binary64_23885
+-lft-identity_binary64_23932 mul0-rgt_binary64_23931 div0_binary64_23929 count-2_binary64_23896
exp-lft-sqr_binary64_24003 cube-prod_binary64_23976 *-rgt-identity_binary64_23938 --rgt-identity_binary64_23934 associate--r-_binary64_23887
pow-base-1_binary64_24008 *-lft-identity_binary64_23937 associate--l-_binary64_23886
exp-diff_binary64_23996 1-exp_binary64_23992 sqr-neg_binary64_23962 mul-1-neg_binary64_23940
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_24211 erf-erfc_binary64_24210 erf-odd_binary64_24209 if-if-and-not_binary64_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 not-gte_binary64_24200 not-lte_binary64_24199 not-gt_binary64_24198 not-lt_binary64_24197 gte-same_binary64_24196 lte-same_binary64_24195 gt-same_binary64_24194 lt-same_binary64_24193 sinh---cosh_binary64_24140 sinh-+-cosh_binary64_24139 sinh-cosh_binary64_24138 tanh-def-c_binary64_24137 tanh-def-b_binary64_24136 tanh-def-a_binary64_24135 cosh-def_binary64_24134 sinh-def_binary64_24133 tan-neg_binary64_24080 cos-neg_binary64_24079 sin-neg_binary64_24078 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 hang-m-tan_binary64_24074 hang-p-tan_binary64_24073 hang-m0-tan_binary64_24072 hang-p0-tan_binary64_24071 hang-0m-tan_binary64_24070 hang-0p-tan_binary64_24069 tan-+PI/2_binary64_24068 tan-+PI_binary64_24067 tan-PI_binary64_24066 tan-PI/3_binary64_24065 tan-PI/4_binary64_24064 tan-PI/6_binary64_24063 cos-+PI/2_binary64_24062 cos-+PI_binary64_24061 cos-PI_binary64_24060 cos-PI/2_binary64_24059 cos-PI/3_binary64_24058 cos-PI/4_binary64_24057 cos-PI/6_binary64_24056 sin-+PI/2_binary64_24055 sin-+PI_binary64_24054 sin-PI_binary64_24053 sin-PI/2_binary64_24052 sin-PI/3_binary64_24051 sin-PI/4_binary64_24050 sin-PI/6_binary64_24049 sub-1-sin_binary64_24048 sub-1-cos_binary64_24047 -1-add-sin_binary64_24046 -1-add-cos_binary64_24045 1-sub-sin_binary64_24044 1-sub-cos_binary64_24043 cos-sin-sum_binary64_24042 log-E_binary64_24038 log-pow_binary64_24037 log-rec_binary64_24036 log-div_binary64_24035 log-prod_binary64_24034 pow-base-0_binary64_24032 unpow1/3_binary64_24015 unpow3_binary64_24014 unpow2_binary64_24013 unpow1/2_binary64_24012 exp-to-pow_binary64_24010 unpow0_binary64_24007 unpow1_binary64_24006 unpow-1_binary64_24005 exp-lft-cube_binary64_24004 exp-cbrt_binary64_24002 exp-sqrt_binary64_24001 div-exp_binary64_23999 rec-exp_binary64_23998 prod-exp_binary64_23997 exp-neg_binary64_23995 e-exp-1_binary64_23993 exp-1-e_binary64_23991 exp-0_binary64_23990 rem-log-exp_binary64_23989 rem-exp-log_binary64_23988 cube-mult_binary64_23978 cube-div_binary64_23977 cube-neg_binary64_23975 rem-3cbrt-rft_binary64_23974 rem-3cbrt-lft_binary64_23973 rem-cbrt-cube_binary64_23972 rem-cube-cbrt_binary64_23971 sqr-abs_binary64_23963 rem-sqrt-square_binary64_23961 rem-square-sqrt_binary64_23960 /-rgt-identity_binary64_23939 *-inverses_binary64_23928 lft-mult-inverse_binary64_23926 rgt-mult-inverse_binary64_23925 remove-double-div_binary64_23924 difference-of-sqr--1_binary64_23919 difference-of-sqr-1_binary64_23918 cancel-sign-sub_binary64_23913 distribute-neg-out_binary64_23910
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
11513
22913
36913
412913
520313
642813
7279613

prune10.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 2
Compiler

Compiled 27 to 24 computations (11.1% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

rewrite69.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
0b
Rules
17×add-sqr-sqrt_binary64_23970
13×associate-*r*_binary64_23888
12×*-un-lft-identity_binary64_23948
10×add-cube-cbrt_binary64_23983 times-frac_binary64_23954
add-exp-log_binary64_23986 add-cbrt-cube_binary64_23984
associate-*l*_binary64_23889
pow1_binary64_24009 add-log-exp_binary64_23987
prod-exp_binary64_23997 cbrt-unprod_binary64_23981 flip3--_binary64_23952 frac-times_binary64_23958 flip--_binary64_23923 unswap-sqr_binary64_23916 associate-*l/_binary64_23891
pow-prod-down_binary64_24019 div-exp_binary64_23999 cbrt-undiv_binary64_23982 associate-*r/_binary64_23890 difference-of-squares_binary64_23917 distribute-lft-out--_binary64_23900 div-inv_binary64_23945 *-commutative_binary64_23879 sum-log_binary64_24039 flip3-+_binary64_23951 flip-+_binary64_23922 +-commutative_binary64_23878
Counts
2 → 49
Calls

2 calls:

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

Compiled 861 to 228 computations (73.5% saved)

series793.0ms (6.4%)

Error
0.0b
Counts
2 → 42
Calls

2 calls:

452.0ms
(+.f64 x (*.f64 (-.f64 y x) (/.f64 z t)))
315.0ms
(*.f64 (-.f64 y x) (/.f64 z t))
Compiler

Compiled 1118 to 645 computations (42.3% saved)

simplify442.0ms (3.5%)

Algorithm
egg-herbie
Rules
529×div-sub_binary64_23953
415×distribute-rgt-in_binary64_23898
403×associate-*r*_binary64_23888
398×distribute-lft-in_binary64_23897
397×associate-*l/_binary64_23891
357×associate-*r/_binary64_23890
317×associate-/l*_binary64_23893
217×times-frac_binary64_23954
164×*-commutative_binary64_23879
135×associate-/l/_binary64_23895
80×associate-*l*_binary64_23889
79×associate-/r/_binary64_23894
66×associate-/r*_binary64_23892
60×exp-prod_binary64_24000
55×distribute-rgt-neg-in_binary64_23906
51×sub-neg_binary64_23941
50×cancel-sign-sub-inv_binary64_23914
41×cube-prod_binary64_23976
40×distribute-lft-neg-out_binary64_23907
39×distribute-neg-frac_binary64_23912
38×distribute-lft-neg-in_binary64_23905
35×log-prod_binary64_24034
34×+-commutative_binary64_23878
33×log-div_binary64_24035 neg-sub0_binary64_23943
32×cube-div_binary64_23977
29×neg-mul-1_binary64_23944
28×exp-sum_binary64_23994 distribute-rgt-neg-out_binary64_23908
27×sqr-pow_binary64_23920
26×exp-diff_binary64_23996
25×associate-+l-_binary64_23883
24×associate-+r-_binary64_23882
23×distribute-neg-in_binary64_23909
20×associate-+l+_binary64_23881
19×*-lft-identity_binary64_23937
16×distribute-rgt-out_binary64_23901
15×*-rgt-identity_binary64_23938 unswap-sqr_binary64_23916
14×associate-+r+_binary64_23880
10×unpow3_binary64_24014 prod-exp_binary64_23997
div-exp_binary64_23999 /-rgt-identity_binary64_23939 pow-sqr_binary64_23921 distribute-rgt-out--_binary64_23902
log-rec_binary64_24036 associate--r+_binary64_23884
associate--l+_binary64_23885
cube-mult_binary64_23978 mul-1-neg_binary64_23940
sqr-neg_binary64_23962 unsub-neg_binary64_23942 difference-of-squares_binary64_23917 swap-sqr_binary64_23915 distribute-lft-out_binary64_23899
rec-exp_binary64_23998 cube-unmult_binary64_23985 cube-neg_binary64_23975
distribute-lft-out--_binary64_23900 associate--r-_binary64_23887
log-pow_binary64_24037 pow-plus_binary64_24011 pow-base-1_binary64_24008 1-exp_binary64_23992 exp-1-e_binary64_23991 rem-log-exp_binary64_23989 remove-double-neg_binary64_23936 associate--l-_binary64_23886
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_24211 erf-erfc_binary64_24210 erf-odd_binary64_24209 if-if-and-not_binary64_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 not-gte_binary64_24200 not-lte_binary64_24199 not-gt_binary64_24198 not-lt_binary64_24197 gte-same_binary64_24196 lte-same_binary64_24195 gt-same_binary64_24194 lt-same_binary64_24193 sinh---cosh_binary64_24140 sinh-+-cosh_binary64_24139 sinh-cosh_binary64_24138 tanh-def-c_binary64_24137 tanh-def-b_binary64_24136 tanh-def-a_binary64_24135 cosh-def_binary64_24134 sinh-def_binary64_24133 tan-neg_binary64_24080 cos-neg_binary64_24079 sin-neg_binary64_24078 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 hang-m-tan_binary64_24074 hang-p-tan_binary64_24073 hang-m0-tan_binary64_24072 hang-p0-tan_binary64_24071 hang-0m-tan_binary64_24070 hang-0p-tan_binary64_24069 tan-+PI/2_binary64_24068 tan-+PI_binary64_24067 tan-PI_binary64_24066 tan-PI/3_binary64_24065 tan-PI/4_binary64_24064 tan-PI/6_binary64_24063 cos-+PI/2_binary64_24062 cos-+PI_binary64_24061 cos-PI_binary64_24060 cos-PI/2_binary64_24059 cos-PI/3_binary64_24058 cos-PI/4_binary64_24057 cos-PI/6_binary64_24056 sin-+PI/2_binary64_24055 sin-+PI_binary64_24054 sin-PI_binary64_24053 sin-PI/2_binary64_24052 sin-PI/3_binary64_24051 sin-PI/4_binary64_24050 sin-PI/6_binary64_24049 sub-1-sin_binary64_24048 sub-1-cos_binary64_24047 -1-add-sin_binary64_24046 -1-add-cos_binary64_24045 1-sub-sin_binary64_24044 1-sub-cos_binary64_24043 cos-sin-sum_binary64_24042 log-E_binary64_24038 pow-base-0_binary64_24032 unpow1/3_binary64_24015 unpow2_binary64_24013 unpow1/2_binary64_24012 exp-to-pow_binary64_24010 unpow0_binary64_24007 unpow1_binary64_24006 unpow-1_binary64_24005 exp-lft-cube_binary64_24004 exp-lft-sqr_binary64_24003 exp-cbrt_binary64_24002 exp-sqrt_binary64_24001 exp-neg_binary64_23995 e-exp-1_binary64_23993 exp-0_binary64_23990 rem-exp-log_binary64_23988 rem-3cbrt-rft_binary64_23974 rem-3cbrt-lft_binary64_23973 rem-cbrt-cube_binary64_23972 rem-cube-cbrt_binary64_23971 sqr-abs_binary64_23963 rem-sqrt-square_binary64_23961 rem-square-sqrt_binary64_23960 sub0-neg_binary64_23935 --rgt-identity_binary64_23934 +-rgt-identity_binary64_23933 +-lft-identity_binary64_23932 mul0-rgt_binary64_23931 mul0-lft_binary64_23930 div0_binary64_23929 *-inverses_binary64_23928 +-inverses_binary64_23927 lft-mult-inverse_binary64_23926 rgt-mult-inverse_binary64_23925 remove-double-div_binary64_23924 difference-of-sqr--1_binary64_23919 difference-of-sqr-1_binary64_23918 cancel-sign-sub_binary64_23913 distribute-frac-neg_binary64_23911 distribute-neg-out_binary64_23910 distribute-rgt1-in_binary64_23904 distribute-lft1-in_binary64_23903 count-2_binary64_23896
Counts
91 → 196
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01381324
13591171
212361171
342821171

prune150.0ms (1.2%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1906196
Fresh011
Picked101
Done000
Total1917198
Error
0b
Counts
198 → 7
Compiler

Compiled 2860 to 454 computations (84.1% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 (-.f64 y x))
0.5b
(cbrt.f64 (-.f64 y x))
3.4b
(*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x)))
4.4b
(*.f64 (*.f64 (cbrt.f64 (-.f64 y x)) (cbrt.f64 (-.f64 y x))) (*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x))))

rewrite247.0ms (2%)

Algorithm
rewrite-expression-head
Error
0b
Rules
116×cbrt-div_binary64_23980
84×frac-times_binary64_23958
58×flip3--_binary64_23952 flip--_binary64_23923
37×associate-*r/_binary64_23890
31×add-sqr-sqrt_binary64_23970
30×add-exp-log_binary64_23986 associate-*l/_binary64_23891
21×*-un-lft-identity_binary64_23948
18×pow1_binary64_24009 add-cbrt-cube_binary64_23984
17×cbrt-prod_binary64_23979
15×prod-exp_binary64_23997 add-cube-cbrt_binary64_23983 cbrt-unprod_binary64_23981
14×associate-*l*_binary64_23889
11×times-frac_binary64_23954
pow-prod-down_binary64_24019 associate-*r*_binary64_23888
add-log-exp_binary64_23987 unswap-sqr_binary64_23916
div-exp_binary64_23999 cbrt-undiv_binary64_23982 difference-of-squares_binary64_23917 distribute-lft-out--_binary64_23900
*-commutative_binary64_23879 pow1/3_binary64_24030
div-inv_binary64_23945
Counts
4 → 152
Calls

4 calls:

21.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 y x)) (cbrt.f64 (-.f64 y x))) (*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x))))
11.0ms
(*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x)))
7.0ms
(cbrt.f64 (-.f64 y x))
3.0ms
(cbrt.f64 (-.f64 y x))
Compiler

Compiled 5259 to 1055 computations (79.9% saved)

series1.2s (9.4%)

Error
0b
Counts
4 → 48
Calls

4 calls:

540.0ms
(*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x)))
368.0ms
(*.f64 (*.f64 (cbrt.f64 (-.f64 y x)) (cbrt.f64 (-.f64 y x))) (*.f64 (/.f64 z t) (cbrt.f64 (-.f64 y x))))
111.0ms
(cbrt.f64 (-.f64 y x))
109.0ms
(cbrt.f64 (-.f64 y x))
Compiler

Compiled 2846 to 1771 computations (37.8% saved)

simplify790.0ms (6.3%)

Algorithm
egg-herbie
Rules
544×associate-*l/_binary64_23891
535×associate-*r/_binary64_23890
488×associate-/l*_binary64_23893
379×associate-*l*_binary64_23889
347×associate-*r*_binary64_23888
179×distribute-rgt-in_binary64_23898 distribute-lft-in_binary64_23897
160×*-commutative_binary64_23879
110×associate-/r*_binary64_23892
69×times-frac_binary64_23954
65×unswap-sqr_binary64_23916
62×sqr-pow_binary64_23920 associate-/r/_binary64_23894
52×distribute-rgt-neg-in_binary64_23906
48×log-prod_binary64_24034
46×cancel-sign-sub-inv_binary64_23914 distribute-lft-neg-in_binary64_23905
40×exp-prod_binary64_24000
39×sub-neg_binary64_23941
29×associate-/l/_binary64_23895
28×neg-sub0_binary64_23943
27×pow-sqr_binary64_23921
22×cube-prod_binary64_23976 neg-mul-1_binary64_23944
21×*-rgt-identity_binary64_23938 +-commutative_binary64_23878
20×swap-sqr_binary64_23915
17×distribute-neg-frac_binary64_23912
16×distribute-lft-neg-out_binary64_23907
15×*-lft-identity_binary64_23937
13×log-div_binary64_24035 cube-unmult_binary64_23985
12×distribute-rgt-neg-out_binary64_23908 distribute-rgt-out_binary64_23901
11×div-sub_binary64_23953
10×distribute-lft-out_binary64_23899
exp-sum_binary64_23994
log-pow_binary64_24037 pow-plus_binary64_24011 mul-1-neg_binary64_23940
cube-div_binary64_23977 associate-+l+_binary64_23881 associate-+r+_binary64_23880
unpow1/3_binary64_24015
rem-3cbrt-lft_binary64_23973
difference-of-squares_binary64_23917 associate-+r-_binary64_23882
unpow3_binary64_24014 cube-mult_binary64_23978 rem-sqrt-square_binary64_23961 unsub-neg_binary64_23942 distribute-neg-in_binary64_23909 distribute-rgt-out--_binary64_23902 count-2_binary64_23896
exp-diff_binary64_23996 rem-3cbrt-rft_binary64_23974 remove-double-neg_binary64_23936 associate-+l-_binary64_23883
log-rec_binary64_24036 unpow2_binary64_24013 unpow1_binary64_24006 exp-sqrt_binary64_24001 prod-exp_binary64_23997 1-exp_binary64_23992 exp-1-e_binary64_23991 rem-log-exp_binary64_23989 rem-cube-cbrt_binary64_23971 /-rgt-identity_binary64_23939 --rgt-identity_binary64_23934 *-inverses_binary64_23928 distribute-neg-out_binary64_23910 distribute-rgt1-in_binary64_23904 associate--r-_binary64_23887
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_24211 erf-erfc_binary64_24210 erf-odd_binary64_24209 if-if-and-not_binary64_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 not-gte_binary64_24200 not-lte_binary64_24199 not-gt_binary64_24198 not-lt_binary64_24197 gte-same_binary64_24196 lte-same_binary64_24195 gt-same_binary64_24194 lt-same_binary64_24193 sinh---cosh_binary64_24140 sinh-+-cosh_binary64_24139 sinh-cosh_binary64_24138 tanh-def-c_binary64_24137 tanh-def-b_binary64_24136 tanh-def-a_binary64_24135 cosh-def_binary64_24134 sinh-def_binary64_24133 tan-neg_binary64_24080 cos-neg_binary64_24079 sin-neg_binary64_24078 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 hang-m-tan_binary64_24074 hang-p-tan_binary64_24073 hang-m0-tan_binary64_24072 hang-p0-tan_binary64_24071 hang-0m-tan_binary64_24070 hang-0p-tan_binary64_24069 tan-+PI/2_binary64_24068 tan-+PI_binary64_24067 tan-PI_binary64_24066 tan-PI/3_binary64_24065 tan-PI/4_binary64_24064 tan-PI/6_binary64_24063 cos-+PI/2_binary64_24062 cos-+PI_binary64_24061 cos-PI_binary64_24060 cos-PI/2_binary64_24059 cos-PI/3_binary64_24058 cos-PI/4_binary64_24057 cos-PI/6_binary64_24056 sin-+PI/2_binary64_24055 sin-+PI_binary64_24054 sin-PI_binary64_24053 sin-PI/2_binary64_24052 sin-PI/3_binary64_24051 sin-PI/4_binary64_24050 sin-PI/6_binary64_24049 sub-1-sin_binary64_24048 sub-1-cos_binary64_24047 -1-add-sin_binary64_24046 -1-add-cos_binary64_24045 1-sub-sin_binary64_24044 1-sub-cos_binary64_24043 cos-sin-sum_binary64_24042 log-E_binary64_24038 pow-base-0_binary64_24032 unpow1/2_binary64_24012 exp-to-pow_binary64_24010 pow-base-1_binary64_24008 unpow0_binary64_24007 unpow-1_binary64_24005 exp-lft-cube_binary64_24004 exp-lft-sqr_binary64_24003 exp-cbrt_binary64_24002 div-exp_binary64_23999 rec-exp_binary64_23998 exp-neg_binary64_23995 e-exp-1_binary64_23993 exp-0_binary64_23990 rem-exp-log_binary64_23988 cube-neg_binary64_23975 rem-cbrt-cube_binary64_23972 sqr-abs_binary64_23963 sqr-neg_binary64_23962 rem-square-sqrt_binary64_23960 sub0-neg_binary64_23935 +-rgt-identity_binary64_23933 +-lft-identity_binary64_23932 mul0-rgt_binary64_23931 mul0-lft_binary64_23930 div0_binary64_23929 +-inverses_binary64_23927 lft-mult-inverse_binary64_23926 rgt-mult-inverse_binary64_23925 remove-double-div_binary64_23924 difference-of-sqr--1_binary64_23919 difference-of-sqr-1_binary64_23918 cancel-sign-sub_binary64_23913 distribute-frac-neg_binary64_23911 distribute-lft1-in_binary64_23903 distribute-lft-out--_binary64_23900 associate--l-_binary64_23886 associate--l+_binary64_23885 associate--r+_binary64_23884
Counts
200 → 567
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02835835
17214945
219364822

prune833.0ms (6.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New5670567
Fresh066
Picked011
Done000
Total5677574
Error
0b
Counts
574 → 7
Compiler

Compiled 20370 to 4367 computations (78.6% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

rewrite105.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0b
Rules
42×add-sqr-sqrt_binary64_23970
37×*-un-lft-identity_binary64_23948
31×times-frac_binary64_23954
23×add-cube-cbrt_binary64_23983
19×associate-*r*_binary64_23888
10×add-exp-log_binary64_23986 add-cbrt-cube_binary64_23984
difference-of-squares_binary64_23917 distribute-lft-out--_binary64_23900
pow1_binary64_24009 add-log-exp_binary64_23987 associate-/l*_binary64_23893
associate-*l*_binary64_23889 associate-/r*_binary64_23892
div-exp_binary64_23999 prod-exp_binary64_23997 cbrt-unprod_binary64_23981 cbrt-undiv_binary64_23982 unswap-sqr_binary64_23916 div-inv_binary64_23945 associate-/l/_binary64_23895
pow-prod-down_binary64_24019 associate-*r/_binary64_23890 *-commutative_binary64_23879 sum-log_binary64_24039 flip3-+_binary64_23951 flip-+_binary64_23922 +-commutative_binary64_23878 frac-2neg_binary64_23959 div-sub_binary64_23953 clear-num_binary64_23947 flip3--_binary64_23952 flip--_binary64_23923
Counts
3 → 87
Calls

3 calls:

14.0ms
(*.f64 z (/.f64 (-.f64 y x) t))
6.0ms
(/.f64 (-.f64 y x) t)
3.0ms
(+.f64 x (*.f64 z (/.f64 (-.f64 y x) t)))
Compiler

Compiled 1505 to 390 computations (74.1% saved)

series969.0ms (7.8%)

Error
0b
Counts
3 → 57
Calls

3 calls:

440.0ms
(+.f64 x (*.f64 z (/.f64 (-.f64 y x) t)))
327.0ms
(*.f64 z (/.f64 (-.f64 y x) t))
169.0ms
(/.f64 (-.f64 y x) t)
Compiler

Compiled 1499 to 877 computations (41.5% saved)

simplify263.0ms (2.1%)

Algorithm
egg-herbie
Rules
565×div-sub_binary64_23953
445×associate-*l/_binary64_23891
440×distribute-rgt-in_binary64_23898
429×distribute-lft-in_binary64_23897
398×associate-*r/_binary64_23890
386×associate-/l*_binary64_23893
300×times-frac_binary64_23954
198×associate-/l/_binary64_23895
171×*-commutative_binary64_23879
96×associate-/r*_binary64_23892
92×associate-*l*_binary64_23889
90×associate-/r/_binary64_23894
69×exp-prod_binary64_24000 associate-*r*_binary64_23888
53×sub-neg_binary64_23941 cancel-sign-sub-inv_binary64_23914 distribute-neg-frac_binary64_23912 distribute-rgt-neg-in_binary64_23906
52×cube-prod_binary64_23976
46×log-prod_binary64_24034
41×+-commutative_binary64_23878
40×associate-+l+_binary64_23881
39×neg-sub0_binary64_23943 distribute-lft-neg-out_binary64_23907
38×cube-div_binary64_23977
37×log-div_binary64_24035
36×distribute-lft-neg-in_binary64_23905
32×neg-mul-1_binary64_23944 associate-+r+_binary64_23880
30×exp-sum_binary64_23994
28×distribute-rgt-neg-out_binary64_23908
27×exp-diff_binary64_23996 distribute-neg-in_binary64_23909
23×sqr-pow_binary64_23920 associate-+l-_binary64_23883
22×*-lft-identity_binary64_23937 associate-+r-_binary64_23882
19×associate--r+_binary64_23884
18×distribute-rgt-out_binary64_23901
15×unswap-sqr_binary64_23916
13×/-rgt-identity_binary64_23939 associate--l+_binary64_23885
12×*-rgt-identity_binary64_23938 distribute-rgt-out--_binary64_23902
11×unpow3_binary64_24014
10×prod-exp_binary64_23997 mul-1-neg_binary64_23940
div-exp_binary64_23999
log-rec_binary64_24036 cube-mult_binary64_23978 sqr-neg_binary64_23962 swap-sqr_binary64_23915
pow-sqr_binary64_23921
distribute-lft-out_binary64_23899
cube-neg_binary64_23975
associate--r-_binary64_23887 associate--l-_binary64_23886
rec-exp_binary64_23998 cube-unmult_binary64_23985 remove-double-neg_binary64_23936 distribute-lft-out--_binary64_23900
log-pow_binary64_24037 pow-plus_binary64_24011 pow-base-1_binary64_24008 1-exp_binary64_23992 exp-1-e_binary64_23991 rem-log-exp_binary64_23989 unsub-neg_binary64_23942 difference-of-squares_binary64_23917
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_24211 erf-erfc_binary64_24210 erf-odd_binary64_24209 if-if-and-not_binary64_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 not-gte_binary64_24200 not-lte_binary64_24199 not-gt_binary64_24198 not-lt_binary64_24197 gte-same_binary64_24196 lte-same_binary64_24195 gt-same_binary64_24194 lt-same_binary64_24193 sinh---cosh_binary64_24140 sinh-+-cosh_binary64_24139 sinh-cosh_binary64_24138 tanh-def-c_binary64_24137 tanh-def-b_binary64_24136 tanh-def-a_binary64_24135 cosh-def_binary64_24134 sinh-def_binary64_24133 tan-neg_binary64_24080 cos-neg_binary64_24079 sin-neg_binary64_24078 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 hang-m-tan_binary64_24074 hang-p-tan_binary64_24073 hang-m0-tan_binary64_24072 hang-p0-tan_binary64_24071 hang-0m-tan_binary64_24070 hang-0p-tan_binary64_24069 tan-+PI/2_binary64_24068 tan-+PI_binary64_24067 tan-PI_binary64_24066 tan-PI/3_binary64_24065 tan-PI/4_binary64_24064 tan-PI/6_binary64_24063 cos-+PI/2_binary64_24062 cos-+PI_binary64_24061 cos-PI_binary64_24060 cos-PI/2_binary64_24059 cos-PI/3_binary64_24058 cos-PI/4_binary64_24057 cos-PI/6_binary64_24056 sin-+PI/2_binary64_24055 sin-+PI_binary64_24054 sin-PI_binary64_24053 sin-PI/2_binary64_24052 sin-PI/3_binary64_24051 sin-PI/4_binary64_24050 sin-PI/6_binary64_24049 sub-1-sin_binary64_24048 sub-1-cos_binary64_24047 -1-add-sin_binary64_24046 -1-add-cos_binary64_24045 1-sub-sin_binary64_24044 1-sub-cos_binary64_24043 cos-sin-sum_binary64_24042 log-E_binary64_24038 pow-base-0_binary64_24032 unpow1/3_binary64_24015 unpow2_binary64_24013 unpow1/2_binary64_24012 exp-to-pow_binary64_24010 unpow0_binary64_24007 unpow1_binary64_24006 unpow-1_binary64_24005 exp-lft-cube_binary64_24004 exp-lft-sqr_binary64_24003 exp-cbrt_binary64_24002 exp-sqrt_binary64_24001 exp-neg_binary64_23995 e-exp-1_binary64_23993 exp-0_binary64_23990 rem-exp-log_binary64_23988 rem-3cbrt-rft_binary64_23974 rem-3cbrt-lft_binary64_23973 rem-cbrt-cube_binary64_23972 rem-cube-cbrt_binary64_23971 sqr-abs_binary64_23963 rem-sqrt-square_binary64_23961 rem-square-sqrt_binary64_23960 sub0-neg_binary64_23935 --rgt-identity_binary64_23934 +-rgt-identity_binary64_23933 +-lft-identity_binary64_23932 mul0-rgt_binary64_23931 mul0-lft_binary64_23930 div0_binary64_23929 *-inverses_binary64_23928 +-inverses_binary64_23927 lft-mult-inverse_binary64_23926 rgt-mult-inverse_binary64_23925 remove-double-div_binary64_23924 difference-of-sqr--1_binary64_23919 difference-of-sqr-1_binary64_23918 cancel-sign-sub_binary64_23913 distribute-frac-neg_binary64_23911 distribute-neg-out_binary64_23910 distribute-rgt1-in_binary64_23904 distribute-lft1-in_binary64_23903 count-2_binary64_23896
Counts
144 → 148
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01611883
14111752
213251752
345731752

prune105.0ms (0.8%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1471148
Fresh145
Picked011
Done011
Total1487155
Error
0b
Counts
155 → 7
Compiler

Compiled 2074 to 378 computations (81.8% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.5b
(cbrt.f64 z)
0.5b
(cbrt.f64 z)
2.3b
(*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x))
4.4b
(*.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) (*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x)))

rewrite169.0ms (1.4%)

Algorithm
rewrite-expression-head
Error
0b
Rules
36×add-sqr-sqrt_binary64_23970
30×add-exp-log_binary64_23986
28×*-un-lft-identity_binary64_23948
26×add-cube-cbrt_binary64_23983
23×associate-*l*_binary64_23889
21×add-cbrt-cube_binary64_23984
20×distribute-rgt-in_binary64_23898 distribute-lft-in_binary64_23897 times-frac_binary64_23954
18×pow1_binary64_24009 cancel-sign-sub-inv_binary64_23914
16×cbrt-prod_binary64_23979
15×prod-exp_binary64_23997 cbrt-unprod_binary64_23981
pow-prod-down_binary64_24019 associate-*r/_binary64_23890
sub-neg_binary64_23941 associate-*r*_binary64_23888
add-log-exp_binary64_23987 flip3--_binary64_23952 frac-times_binary64_23958 flip--_binary64_23923
div-exp_binary64_23999 cbrt-undiv_binary64_23982 unswap-sqr_binary64_23916
associate-*l/_binary64_23891 *-commutative_binary64_23879 pow1/3_binary64_24030
div-inv_binary64_23945 difference-of-squares_binary64_23917 distribute-lft-out--_binary64_23900
Counts
4 → 125
Calls

4 calls:

16.0ms
(*.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) (*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x)))
13.0ms
(*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x))
1.0ms
(cbrt.f64 z)
1.0ms
(cbrt.f64 z)
Compiler

Compiled 3129 to 622 computations (80.1% saved)

series1.3s (10.5%)

Error
0b
Counts
4 → 42
Calls

4 calls:

728.0ms
(*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x))
315.0ms
(*.f64 (*.f64 (cbrt.f64 z) (cbrt.f64 z)) (*.f64 (/.f64 (cbrt.f64 z) t) (-.f64 y x)))
120.0ms
(cbrt.f64 z)
113.0ms
(cbrt.f64 z)
Compiler

Compiled 1824 to 1156 computations (36.6% saved)

simplify622.0ms (5%)

Algorithm
egg-herbie
Rules
675×distribute-rgt-in_binary64_23898
664×distribute-lft-in_binary64_23897
358×associate-*l*_binary64_23889
312×associate-*r*_binary64_23888
144×distribute-lft-neg-out_binary64_23907
143×distribute-rgt-neg-out_binary64_23908
128×*-commutative_binary64_23879
109×unswap-sqr_binary64_23916
95×exp-prod_binary64_24000
89×times-frac_binary64_23954
88×distribute-rgt-neg-in_binary64_23906
77×associate-*l/_binary64_23891
71×cancel-sign-sub-inv_binary64_23914
70×associate-/l*_binary64_23893
66×distribute-lft-neg-in_binary64_23905
61×log-prod_binary64_24034 associate-*r/_binary64_23890
50×neg-sub0_binary64_23943
43×sub-neg_binary64_23941 sqr-pow_binary64_23920
40×swap-sqr_binary64_23915
33×div-sub_binary64_23953
32×cube-prod_binary64_23976 neg-mul-1_binary64_23944
23×distribute-neg-frac_binary64_23912
22×log-div_binary64_24035
21×*-rgt-identity_binary64_23938 distribute-rgt-out_binary64_23901 +-commutative_binary64_23878
18×*-lft-identity_binary64_23937
16×mul-1-neg_binary64_23940 pow-sqr_binary64_23921 distribute-rgt-out--_binary64_23902
14×distribute-neg-in_binary64_23909
13×cube-div_binary64_23977
12×exp-sum_binary64_23994
10×unsub-neg_binary64_23942
cube-unmult_binary64_23985 associate-/r*_binary64_23892 associate-+r+_binary64_23880
distribute-frac-neg_binary64_23911 associate-+l+_binary64_23881
exp-diff_binary64_23996 distribute-lft-out--_binary64_23900 distribute-lft-out_binary64_23899
log-pow_binary64_24037 pow-plus_binary64_24011 associate-/r/_binary64_23894 associate-+r-_binary64_23882
rem-sqrt-square_binary64_23961
unpow3_binary64_24014 cube-mult_binary64_23978 difference-of-squares_binary64_23917
unpow1/3_binary64_24015 exp-neg_binary64_23995 rem-3cbrt-lft_binary64_23973 associate-+l-_binary64_23883
log-rec_binary64_24036 prod-exp_binary64_23997 1-exp_binary64_23992 exp-1-e_binary64_23991 rem-log-exp_binary64_23989 rem-cube-cbrt_binary64_23971 rem-square-sqrt_binary64_23960 /-rgt-identity_binary64_23939 remove-double-neg_binary64_23936 +-rgt-identity_binary64_23933 distribute-lft1-in_binary64_23903 count-2_binary64_23896
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_24211 erf-erfc_binary64_24210 erf-odd_binary64_24209 if-if-and-not_binary64_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 not-gte_binary64_24200 not-lte_binary64_24199 not-gt_binary64_24198 not-lt_binary64_24197 gte-same_binary64_24196 lte-same_binary64_24195 gt-same_binary64_24194 lt-same_binary64_24193 sinh---cosh_binary64_24140 sinh-+-cosh_binary64_24139 sinh-cosh_binary64_24138 tanh-def-c_binary64_24137 tanh-def-b_binary64_24136 tanh-def-a_binary64_24135 cosh-def_binary64_24134 sinh-def_binary64_24133 tan-neg_binary64_24080 cos-neg_binary64_24079 sin-neg_binary64_24078 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 hang-m-tan_binary64_24074 hang-p-tan_binary64_24073 hang-m0-tan_binary64_24072 hang-p0-tan_binary64_24071 hang-0m-tan_binary64_24070 hang-0p-tan_binary64_24069 tan-+PI/2_binary64_24068 tan-+PI_binary64_24067 tan-PI_binary64_24066 tan-PI/3_binary64_24065 tan-PI/4_binary64_24064 tan-PI/6_binary64_24063 cos-+PI/2_binary64_24062 cos-+PI_binary64_24061 cos-PI_binary64_24060 cos-PI/2_binary64_24059 cos-PI/3_binary64_24058 cos-PI/4_binary64_24057 cos-PI/6_binary64_24056 sin-+PI/2_binary64_24055 sin-+PI_binary64_24054 sin-PI_binary64_24053 sin-PI/2_binary64_24052 sin-PI/3_binary64_24051 sin-PI/4_binary64_24050 sin-PI/6_binary64_24049 sub-1-sin_binary64_24048 sub-1-cos_binary64_24047 -1-add-sin_binary64_24046 -1-add-cos_binary64_24045 1-sub-sin_binary64_24044 1-sub-cos_binary64_24043 cos-sin-sum_binary64_24042 log-E_binary64_24038 pow-base-0_binary64_24032 unpow2_binary64_24013 unpow1/2_binary64_24012 exp-to-pow_binary64_24010 pow-base-1_binary64_24008 unpow0_binary64_24007 unpow1_binary64_24006 unpow-1_binary64_24005 exp-lft-cube_binary64_24004 exp-lft-sqr_binary64_24003 exp-cbrt_binary64_24002 exp-sqrt_binary64_24001 div-exp_binary64_23999 rec-exp_binary64_23998 e-exp-1_binary64_23993 exp-0_binary64_23990 rem-exp-log_binary64_23988 cube-neg_binary64_23975 rem-3cbrt-rft_binary64_23974 rem-cbrt-cube_binary64_23972 sqr-abs_binary64_23963 sqr-neg_binary64_23962 sub0-neg_binary64_23935 --rgt-identity_binary64_23934 +-lft-identity_binary64_23932 mul0-rgt_binary64_23931 mul0-lft_binary64_23930 div0_binary64_23929 *-inverses_binary64_23928 +-inverses_binary64_23927 lft-mult-inverse_binary64_23926 rgt-mult-inverse_binary64_23925 remove-double-div_binary64_23924 difference-of-sqr--1_binary64_23919 difference-of-sqr-1_binary64_23918 cancel-sign-sub_binary64_23913 distribute-neg-out_binary64_23910 distribute-rgt1-in_binary64_23904 associate-/l/_binary64_23895 associate--r-_binary64_23887 associate--l-_binary64_23886 associate--l+_binary64_23885 associate--r+_binary64_23884
Counts
167 → 486
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02182339
15972103
220802097

prune378.0ms (3%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New4860486
Fresh044
Picked011
Done022
Total4867493
Error
0b
Counts
493 → 7
Compiler

Compiled 9178 to 940 computations (89.8% saved)

regimes695.0ms (5.6%)

Accuracy

Total 0.9b remaining (99.7%)

Threshold costs 0.9b (99.7%)

Compiler

Compiled 3766 to 2991 computations (20.6% saved)

bsearch0.0ms (0%)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64_23879 +-commutative_binary64_23878
sub-neg_binary64_23941
neg-mul-1_binary64_23944 neg-sub0_binary64_23943
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_24208 if-if-and_binary64_24207 if-if-or-not_binary64_24206 if-if-or_binary64_24205 if-not_binary64_24204 if-same_binary64_24203 if-false_binary64_24202 if-true_binary64_24201 tan-0_binary64_24077 cos-0_binary64_24076 sin-0_binary64_24075 unpow1_binary64_24006 e-exp-1_binary64_23993 1-exp_binary64_23992 exp-1-e_binary64_23991 exp-0_binary64_23990 sqr-abs_binary64_23963 sqr-neg_binary64_23962 unsub-neg_binary64_23942 mul-1-neg_binary64_23940 /-rgt-identity_binary64_23939 *-rgt-identity_binary64_23938 *-lft-identity_binary64_23937 remove-double-neg_binary64_23936 sub0-neg_binary64_23935 --rgt-identity_binary64_23934 +-rgt-identity_binary64_23933 +-lft-identity_binary64_23932 cancel-sign-sub-inv_binary64_23914 cancel-sign-sub_binary64_23913 distribute-neg-frac_binary64_23912 distribute-frac-neg_binary64_23911 distribute-neg-out_binary64_23910 distribute-neg-in_binary64_23909 distribute-rgt-neg-out_binary64_23908 distribute-lft-neg-out_binary64_23907 distribute-rgt-neg-in_binary64_23906 distribute-lft-neg-in_binary64_23905
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01537
12037
22537
32737
42837
Proof
(+ f64 h0 (* f64 (* f64 (- f64 h1 h0) (/ f64 (* f64 (cbrt f64 h2) (cbrt f64 h2)) (* f64 (cbrt f64 h3) (cbrt f64 h3)))) (/ f64 (cbrt f64 h2) (cbrt f64 h3))))

end0.0ms (0%)

sample1.3s (10.6%)

Algorithm
intervals
Results
265.0ms8000×body128valid
68.0ms2102×body128invalid
Compiler

Compiled 668 to 510 computations (23.7% saved)

Profiling

Loading profile data...