Details

Time bar (total: 22.7s)

analyze1.3s (5.6%)

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
1.8%98%0.2%10
7.7%92.1%0.2%11
10.4%89.4%0.2%12
12.2%87.6%0.2%13
21.8%77.8%0.4%14
Compiler

Compiled 14 to 12 computations (14.3% saved)

sample31.0ms (0.1%)

Algorithm
intervals
Results
8.0ms206×body128valid
3.0ms23×body1024valid
2.0ms15×body512valid
1.0ms34×body128invalid
1.0ms11×body256valid
0.0msbody2048valid
Compiler

Compiled 27 to 28 computations (-3.7% saved)

simplify552.0ms (2.4%)

Algorithm
egg-herbie
Rules
744×unsub-neg_binary64_12007
452×exp-prod_binary64_12065
448×swap-sqr_binary64_11980
260×sub-neg_binary64_12006
257×distribute-rgt-neg-out_binary64_11973
237×distribute-neg-out_binary64_11975
198×distribute-frac-neg_binary64_11976
189×distribute-rgt-in_binary64_11963
186×associate-*r*_binary64_11953
175×associate-/l*_binary64_11958
154×distribute-neg-in_binary64_11974
151×associate-*l*_binary64_11954
149×neg-sub0_binary64_12008
140×distribute-lft-in_binary64_11962
129×times-frac_binary64_12019
126×neg-mul-1_binary64_12009
120×div-sub_binary64_12018
116×cancel-sign-sub-inv_binary64_11979
115×distribute-neg-frac_binary64_11977
106×distribute-rgt-out_binary64_11966
90×associate-+l-_binary64_11948
85×associate--r+_binary64_11949
78×associate--l+_binary64_11950
60×distribute-lft-neg-out_binary64_11972
55×associate-+l+_binary64_11946
54×+-commutative_binary64_11943
48×remove-double-neg_binary64_12001
47×distribute-lft-neg-in_binary64_11970
46×associate-+r+_binary64_11945
42×*-commutative_binary64_11944
41×distribute-rgt-neg-in_binary64_11971
39×associate-/r*_binary64_11957
33×associate-+r-_binary64_11947
26×associate-/l/_binary64_11960 associate-*l/_binary64_11956
22×+-rgt-identity_binary64_11998
21×sqr-neg_binary64_12027 sub0-neg_binary64_12000
18×distribute-rgt1-in_binary64_11969 distribute-lft-out_binary64_11964
16×associate-*r/_binary64_11955
14×mul0-rgt_binary64_11996 div0_binary64_11994
13×mul0-lft_binary64_11995
12×+-lft-identity_binary64_11997
11×associate-/r/_binary64_11959
10×distribute-rgt-out--_binary64_11967
associate--r-_binary64_11952 associate--l-_binary64_11951
mul-1-neg_binary64_12005
*-inverses_binary64_11993 distribute-lft1-in_binary64_11968
exp-lft-sqr_binary64_12068 exp-diff_binary64_12061 exp-sum_binary64_12059 1-exp_binary64_12057 cube-unmult_binary64_12050 --rgt-identity_binary64_11999 difference-of-sqr--1_binary64_11984 cancel-sign-sub_binary64_11978 distribute-lft-out--_binary64_11965 count-2_binary64_11961
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 log-div_binary64_12100 log-prod_binary64_12099 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow3_binary64_12079 unpow2_binary64_12078 unpow1/2_binary64_12077 pow-plus_binary64_12076 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 div-exp_binary64_12064 rec-exp_binary64_12063 prod-exp_binary64_12062 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-1-e_binary64_12056 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-mult_binary64_12043 cube-div_binary64_12042 cube-prod_binary64_12041 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 /-rgt-identity_binary64_12004 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 pow-sqr_binary64_11986 sqr-pow_binary64_11985 difference-of-sqr-1_binary64_11983 difference-of-squares_binary64_11982 unswap-sqr_binary64_11981
Counts
1 → 6
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01219
12119
25219
314019
439519
589619
6281319

prune13.0ms (0.1%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New246
Fresh101
Picked000
Done000
Total347
Error
12.7b
Counts
7 → 4
Compiler

Compiled 130 to 71 computations (45.4% saved)

localize9.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (-.f64 a z) (-.f64 y z))
2.2b
(/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z)))
2.4b
(+.f64 x (/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z))))

rewrite426.0ms (1.9%)

Algorithm
rewrite-expression-head
Error
12.4b
Rules
330×times-frac_binary64_12019
323×*-un-lft-identity_binary64_12013
321×add-sqr-sqrt_binary64_12035
113×add-cube-cbrt_binary64_12048
104×difference-of-squares_binary64_11982 distribute-lft-out--_binary64_11965
36×associate-/r*_binary64_11957
15×associate-/r/_binary64_11959
10×add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049 associate-/l*_binary64_11958
flip3--_binary64_12017 flip--_binary64_11988
div-inv_binary64_12010
add-log-exp_binary64_12052
div-exp_binary64_12064 cbrt-undiv_binary64_12047 associate-/l/_binary64_11960
pow1_binary64_12074 div-sub_binary64_12018
frac-2neg_binary64_12024 clear-num_binary64_12012
sum-log_binary64_12104 flip3-+_binary64_12016 flip-+_binary64_11987 distribute-lft-out_binary64_11964 associate-+r-_binary64_11947 +-commutative_binary64_11943
Counts
3 → 274
Calls

3 calls:

48.0ms
(+.f64 x (/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z))))
17.0ms
(/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z)))
8.0ms
(/.f64 (-.f64 a z) (-.f64 y z))
Compiler

Compiled 7392 to 1404 computations (81% saved)

series2.5s (11%)

Error
2.1b
Counts
3 → 93
Calls

3 calls:

1.3s
(+.f64 x (/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z))))
818.0ms
(/.f64 (-.f64 t x) (/.f64 (-.f64 a z) (-.f64 y z)))
247.0ms
(/.f64 (-.f64 a z) (-.f64 y z))
Compiler

Compiled 7559 to 4017 computations (46.9% saved)

simplify941.0ms (4.1%)

Algorithm
egg-herbie
Rules
449×associate-/r/_binary64_11959
312×associate-/l*_binary64_11958
253×associate-/l/_binary64_11960
218×sub-neg_binary64_12006
198×associate-*l/_binary64_11956
183×times-frac_binary64_12019
175×div-sub_binary64_12018
169×distribute-rgt-in_binary64_11963
164×distribute-lft-in_binary64_11962
109×associate-/r*_binary64_11957
104×associate-*r/_binary64_11955 associate-*r*_binary64_11953 +-commutative_binary64_11943
82×associate-*l*_binary64_11954
71×associate-+r+_binary64_11945
52×*-commutative_binary64_11944
49×neg-sub0_binary64_12008 distribute-neg-in_binary64_11974
41×neg-mul-1_binary64_12009
37×associate--l+_binary64_11950
31×associate--r+_binary64_11949
25×distribute-neg-frac_binary64_11977
22×sqr-pow_binary64_11985
17×distribute-rgt-neg-in_binary64_11971
15×/-rgt-identity_binary64_12004
14×cancel-sign-sub-inv_binary64_11979
13×mul-1-neg_binary64_12005
11×distribute-lft-neg-in_binary64_11970
10×pow-sqr_binary64_11986
unpow3_binary64_12079
difference-of-squares_binary64_11982
cube-mult_binary64_12043
log-div_binary64_12100 cube-unmult_binary64_12050
unpow2_binary64_12078 pow-plus_binary64_12076 cube-div_binary64_12042 remove-double-div_binary64_11989 unswap-sqr_binary64_11981 distribute-lft-neg-out_binary64_11972 distribute-rgt-out_binary64_11966
log-prod_binary64_12099 prod-exp_binary64_12062 exp-diff_binary64_12061 cube-prod_binary64_12041 *-inverses_binary64_11993 swap-sqr_binary64_11980 distribute-rgt-out--_binary64_11967
exp-prod_binary64_12065 div-exp_binary64_12064 rec-exp_binary64_12063 exp-sum_binary64_12059 1-exp_binary64_12057 associate--r-_binary64_11952 associate-+r-_binary64_11947
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow1/2_binary64_12077 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-1-e_binary64_12056 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 sqr-neg_binary64_12027 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 unsub-neg_binary64_12007 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 mul0-rgt_binary64_11996 mul0-lft_binary64_11995 div0_binary64_11994 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 cancel-sign-sub_binary64_11978 distribute-frac-neg_binary64_11976 distribute-neg-out_binary64_11975 distribute-rgt-neg-out_binary64_11973 distribute-rgt1-in_binary64_11969 distribute-lft1-in_binary64_11968 distribute-lft-out--_binary64_11965 distribute-lft-out_binary64_11964 count-2_binary64_11961 associate--l-_binary64_11951 associate-+l-_binary64_11948 associate-+l+_binary64_11946
Counts
367 → 792
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
059912770
1171712629

prune885.0ms (3.9%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New7884792
Fresh123
Picked011
Done000
Total7897796
Error
0.3b
Counts
796 → 7
Compiler

Compiled 24345 to 3361 computations (86.2% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

2.8b
(+.f64 x (*.f64 (/.f64 z (-.f64 a z)) x))
5.8b
(*.f64 (/.f64 y (-.f64 a z)) x)
6.0b
(*.f64 (/.f64 t (-.f64 a z)) y)
9.7b
(*.f64 (/.f64 t (-.f64 a z)) z)

rewrite215.0ms (0.9%)

Algorithm
rewrite-expression-head
Error
0.3b
Rules
67×add-sqr-sqrt_binary64_12035
63×associate-*l*_binary64_11954
53×*-un-lft-identity_binary64_12013
48×times-frac_binary64_12019
34×add-cube-cbrt_binary64_12048
19×add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049
10×pow1_binary64_12074
difference-of-squares_binary64_11982 distribute-lft-out--_binary64_11965 associate-*r*_binary64_11953
prod-exp_binary64_12062 add-log-exp_binary64_12052 cbrt-unprod_binary64_12046 unswap-sqr_binary64_11981 associate-/r/_binary64_11959
pow-prod-down_binary64_12084 div-exp_binary64_12064 cbrt-undiv_binary64_12047 associate-*l/_binary64_11956 div-inv_binary64_12010 flip3--_binary64_12017 flip--_binary64_11988 *-commutative_binary64_11944
sum-log_binary64_12104 flip3-+_binary64_12016 flip-+_binary64_11987 distribute-rgt1-in_binary64_11969 distribute-rgt-out_binary64_11966 +-commutative_binary64_11943
Counts
4 → 133
Calls

4 calls:

10.0ms
(*.f64 (/.f64 t (-.f64 a z)) z)
10.0ms
(*.f64 (/.f64 y (-.f64 a z)) x)
9.0ms
(*.f64 (/.f64 t (-.f64 a z)) y)
3.0ms
(+.f64 x (*.f64 (/.f64 z (-.f64 a z)) x))
Compiler

Compiled 5527 to 769 computations (86.1% saved)

series1.0s (4.5%)

Error
0.3b
Counts
4 → 72
Calls

4 calls:

267.0ms
(*.f64 (/.f64 t (-.f64 a z)) y)
230.0ms
(*.f64 (/.f64 y (-.f64 a z)) x)
220.0ms
(*.f64 (/.f64 t (-.f64 a z)) z)
219.0ms
(+.f64 x (*.f64 (/.f64 z (-.f64 a z)) x))
Compiler

Compiled 6795 to 2816 computations (58.6% saved)

simplify308.0ms (1.4%)

Algorithm
egg-herbie
Rules
782×associate-/l*_binary64_11958
687×associate-*r/_binary64_11955
574×times-frac_binary64_12019
290×associate-/r*_binary64_11957
178×associate-*l*_binary64_11954
157×associate-*r*_binary64_11953
143×associate-*l/_binary64_11956
142×associate-/r/_binary64_11959
140×*-commutative_binary64_11944
127×distribute-rgt-in_binary64_11963
105×distribute-lft-in_binary64_11962
61×cancel-sign-sub-inv_binary64_11979
59×distribute-rgt-neg-in_binary64_11971
54×sqr-pow_binary64_11985
48×distribute-rgt-out_binary64_11966
46×distribute-lft-neg-in_binary64_11970
39×sub-neg_binary64_12006
36×log-prod_binary64_12099
35×exp-prod_binary64_12065 neg-sub0_binary64_12008 +-commutative_binary64_11943
34×associate-/l/_binary64_11960
33×cube-prod_binary64_12041 distribute-neg-frac_binary64_11977
29×neg-mul-1_binary64_12009 distribute-lft-out_binary64_11964
27×swap-sqr_binary64_11980
24×div-sub_binary64_12018
19×log-div_binary64_12100
18×*-lft-identity_binary64_12002
17×cube-div_binary64_12042 pow-sqr_binary64_11986 unswap-sqr_binary64_11981
16×*-rgt-identity_binary64_12003 associate-+l+_binary64_11946
15×associate-+r+_binary64_11945
11×distribute-rgt-out--_binary64_11967
10×cube-unmult_binary64_12050 distribute-lft-neg-out_binary64_11972
distribute-neg-in_binary64_11974
mul-1-neg_binary64_12005
unpow3_binary64_12079 pow-plus_binary64_12076 cube-mult_binary64_12043 unsub-neg_binary64_12007
distribute-rgt1-in_binary64_11969
exp-sum_binary64_12059 distribute-lft-out--_binary64_11965 associate-+l-_binary64_11948 associate-+r-_binary64_11947
distribute-rgt-neg-out_binary64_11973 associate--r+_binary64_11949
unpow2_binary64_12078 unpow1_binary64_12071 prod-exp_binary64_12062 *-inverses_binary64_11993
log-rec_binary64_12101 exp-sqrt_binary64_12066 1-exp_binary64_12057 exp-1-e_binary64_12056 rem-log-exp_binary64_12054 /-rgt-identity_binary64_12004 difference-of-squares_binary64_11982
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow1/2_binary64_12077 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 div-exp_binary64_12064 rec-exp_binary64_12063 exp-diff_binary64_12061 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-0_binary64_12055 rem-exp-log_binary64_12053 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 sqr-neg_binary64_12027 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 mul0-rgt_binary64_11996 mul0-lft_binary64_11995 div0_binary64_11994 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 cancel-sign-sub_binary64_11978 distribute-frac-neg_binary64_11976 distribute-neg-out_binary64_11975 distribute-lft1-in_binary64_11968 count-2_binary64_11961 associate--r-_binary64_11952 associate--l-_binary64_11951 associate--l+_binary64_11950
Counts
205 → 473
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02673087
16792856
220172694

prune564.0ms (2.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New4721473
Fresh145
Picked011
Done011
Total4737480
Error
0.2b
Counts
480 → 7
Compiler

Compiled 19565 to 1982 computations (89.9% saved)

localize10.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (-.f64 y z) (-.f64 a z))
2.4b
(+.f64 x (*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x)))
2.7b
(*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x))

rewrite173.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
82×add-sqr-sqrt_binary64_12035
77×*-un-lft-identity_binary64_12013
51×times-frac_binary64_12019
31×add-cube-cbrt_binary64_12048 associate-*l*_binary64_11954
23×difference-of-squares_binary64_11982 distribute-lft-out--_binary64_11965
12×cancel-sign-sub-inv_binary64_11979
10×add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049
distribute-rgt-in_binary64_11963 distribute-lft-in_binary64_11962 associate-+r+_binary64_11945
pow1_binary64_12074 add-log-exp_binary64_12052 flip3--_binary64_12017 flip--_binary64_11988 associate-*r*_binary64_11953 associate-/l*_binary64_11958 associate-/r*_binary64_11957
sub-neg_binary64_12006 associate-/r/_binary64_11959
div-exp_binary64_12064 prod-exp_binary64_12062 cbrt-unprod_binary64_12046 cbrt-undiv_binary64_12047 frac-times_binary64_12023 unswap-sqr_binary64_11981 associate-*r/_binary64_11955 div-inv_binary64_12010 associate-/l/_binary64_11960
pow-prod-down_binary64_12084 associate-*l/_binary64_11956 *-commutative_binary64_11944 sum-log_binary64_12104 flip3-+_binary64_12016 flip-+_binary64_11987 +-commutative_binary64_11943 frac-2neg_binary64_12024 div-sub_binary64_12018 clear-num_binary64_12012
Counts
3 → 135
Calls

3 calls:

21.0ms
(*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x))
8.0ms
(/.f64 (-.f64 y z) (-.f64 a z))
4.0ms
(+.f64 x (*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x)))
Compiler

Compiled 3183 to 625 computations (80.4% saved)

series2.4s (10.7%)

Error
0.0b
Counts
3 → 98
Calls

3 calls:

1.2s
(+.f64 x (*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x)))
799.0ms
(*.f64 (/.f64 (-.f64 y z) (-.f64 a z)) (-.f64 t x))
269.0ms
(/.f64 (-.f64 y z) (-.f64 a z))
Compiler

Compiled 7970 to 4272 computations (46.4% saved)

simplify976.0ms (4.3%)

Algorithm
egg-herbie
Rules
310×associate-+r+_binary64_11945
251×+-commutative_binary64_11943
248×associate-+l+_binary64_11946
237×associate--l+_binary64_11950
217×associate--r+_binary64_11949
171×sub-neg_binary64_12006 associate-/l*_binary64_11958
145×times-frac_binary64_12019
144×*-commutative_binary64_11944
135×associate-*l*_binary64_11954
134×div-sub_binary64_12018
132×distribute-rgt-in_binary64_11963
130×associate-*r*_binary64_11953
125×distribute-lft-in_binary64_11962
89×associate-*l/_binary64_11956
74×associate-/r*_binary64_11957
58×associate-/r/_binary64_11959
56×neg-sub0_binary64_12008 distribute-neg-in_binary64_11974
53×associate-*r/_binary64_11955
48×neg-mul-1_binary64_12009
40×associate-/l/_binary64_11960
29×distribute-rgt-neg-in_binary64_11971
21×sqr-pow_binary64_11985 cancel-sign-sub-inv_binary64_11979 distribute-neg-frac_binary64_11977
18×distribute-lft-neg-in_binary64_11970
16×exp-prod_binary64_12065 cube-prod_binary64_12041
14×log-div_binary64_12100 cube-div_binary64_12042
13×mul-1-neg_binary64_12005 distribute-lft-neg-out_binary64_11972
12×log-prod_binary64_12099
11×exp-sum_binary64_12059
10×prod-exp_binary64_12062
unpow3_binary64_12079 div-exp_binary64_12064 pow-sqr_binary64_11986
difference-of-squares_binary64_11982
/-rgt-identity_binary64_12004 distribute-rgt-neg-out_binary64_11973
pow-plus_binary64_12076 cube-unmult_binary64_12050 cube-mult_binary64_12043
exp-diff_binary64_12061 swap-sqr_binary64_11980
rec-exp_binary64_12063 *-rgt-identity_binary64_12003 distribute-rgt-out_binary64_11966 associate-+r-_binary64_11947
unpow2_binary64_12078 unpow1_binary64_12071 *-lft-identity_binary64_12002 *-inverses_binary64_11993 distribute-rgt-out--_binary64_11967 associate--r-_binary64_11952 associate-+l-_binary64_11948
log-rec_binary64_12101 exp-sqrt_binary64_12066 1-exp_binary64_12057 exp-1-e_binary64_12056 rem-log-exp_binary64_12054 rem-3cbrt-lft_binary64_12038 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow1/2_binary64_12077 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-0_binary64_12055 rem-exp-log_binary64_12053 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 sqr-neg_binary64_12027 unsub-neg_binary64_12007 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 mul0-rgt_binary64_11996 mul0-lft_binary64_11995 div0_binary64_11994 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 remove-double-div_binary64_11989 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 unswap-sqr_binary64_11981 cancel-sign-sub_binary64_11978 distribute-frac-neg_binary64_11976 distribute-neg-out_binary64_11975 distribute-rgt1-in_binary64_11969 distribute-lft1-in_binary64_11968 distribute-lft-out--_binary64_11965 distribute-lft-out_binary64_11964 count-2_binary64_11961 associate--l-_binary64_11951
Counts
233 → 340
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04627442
113137181
249087118

prune421.0ms (1.9%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New3400340
Fresh044
Picked011
Done022
Total3407347
Error
0.2b
Counts
347 → 7
Compiler

Compiled 11889 to 2224 computations (81.3% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(/.f64 (-.f64 a z) (-.f64 t x))
4.1b
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
4.2b
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x)))

rewrite397.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
330×times-frac_binary64_12019
323×*-un-lft-identity_binary64_12013
321×add-sqr-sqrt_binary64_12035
113×add-cube-cbrt_binary64_12048
104×difference-of-squares_binary64_11982 distribute-lft-out--_binary64_11965
36×associate-/r*_binary64_11957
15×associate-/r/_binary64_11959
10×add-exp-log_binary64_12051 add-cbrt-cube_binary64_12049 associate-/l*_binary64_11958
flip3--_binary64_12017 flip--_binary64_11988
div-inv_binary64_12010
add-log-exp_binary64_12052
div-exp_binary64_12064 cbrt-undiv_binary64_12047 associate-/l/_binary64_11960
pow1_binary64_12074 div-sub_binary64_12018
frac-2neg_binary64_12024 clear-num_binary64_12012
sum-log_binary64_12104 flip3-+_binary64_12016 flip-+_binary64_11987 distribute-lft-out_binary64_11964 associate-+r-_binary64_11947 +-commutative_binary64_11943
Counts
3 → 274
Calls

3 calls:

51.0ms
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
18.0ms
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x)))
8.0ms
(/.f64 (-.f64 a z) (-.f64 t x))
Compiler

Compiled 7392 to 1404 computations (81% saved)

series2.5s (11%)

Error
0.0b
Counts
3 → 96
Calls

3 calls:

1.2s
(+.f64 x (/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x))))
793.0ms
(/.f64 (-.f64 y z) (/.f64 (-.f64 a z) (-.f64 t x)))
340.0ms
(/.f64 (-.f64 a z) (-.f64 t x))
Compiler

Compiled 7700 to 4038 computations (47.6% saved)

simplify942.0ms (4.2%)

Algorithm
egg-herbie
Rules
454×associate-/r/_binary64_11959
307×associate-/l*_binary64_11958
249×associate-/l/_binary64_11960
207×sub-neg_binary64_12006
195×associate-*l/_binary64_11956
174×div-sub_binary64_12018
168×times-frac_binary64_12019
167×distribute-rgt-in_binary64_11963
163×distribute-lft-in_binary64_11962
107×associate-/r*_binary64_11957
102×associate-*r/_binary64_11955 associate-*r*_binary64_11953
101×+-commutative_binary64_11943
81×associate-*l*_binary64_11954
69×associate-+r+_binary64_11945
50×*-commutative_binary64_11944
49×distribute-neg-in_binary64_11974
47×neg-sub0_binary64_12008
39×neg-mul-1_binary64_12009
33×associate--l+_binary64_11950
29×associate--r+_binary64_11949
24×sqr-pow_binary64_11985
23×distribute-neg-frac_binary64_11977
16×distribute-rgt-neg-in_binary64_11971
14×/-rgt-identity_binary64_12004 cancel-sign-sub-inv_binary64_11979
13×mul-1-neg_binary64_12005
11×pow-sqr_binary64_11986
10×distribute-lft-neg-in_binary64_11970
unpow3_binary64_12079 difference-of-squares_binary64_11982
associate--r-_binary64_11952
cube-mult_binary64_12043
log-div_binary64_12100 unpow2_binary64_12078 pow-plus_binary64_12076 cube-unmult_binary64_12050
cube-div_binary64_12042 remove-double-div_binary64_11989 unswap-sqr_binary64_11981 distribute-lft-neg-out_binary64_11972 distribute-rgt-out_binary64_11966
log-prod_binary64_12099 prod-exp_binary64_12062 exp-diff_binary64_12061 cube-prod_binary64_12041 swap-sqr_binary64_11980 distribute-rgt-out--_binary64_11967
exp-prod_binary64_12065 div-exp_binary64_12064 rec-exp_binary64_12063 exp-sum_binary64_12059 1-exp_binary64_12057 *-inverses_binary64_11993 associate-+r-_binary64_11947
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_12276 erf-erfc_binary64_12275 erf-odd_binary64_12274 if-if-and-not_binary64_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 not-gte_binary64_12265 not-lte_binary64_12264 not-gt_binary64_12263 not-lt_binary64_12262 gte-same_binary64_12261 lte-same_binary64_12260 gt-same_binary64_12259 lt-same_binary64_12258 sinh---cosh_binary64_12205 sinh-+-cosh_binary64_12204 sinh-cosh_binary64_12203 tanh-def-c_binary64_12202 tanh-def-b_binary64_12201 tanh-def-a_binary64_12200 cosh-def_binary64_12199 sinh-def_binary64_12198 tan-neg_binary64_12145 cos-neg_binary64_12144 sin-neg_binary64_12143 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 hang-m-tan_binary64_12139 hang-p-tan_binary64_12138 hang-m0-tan_binary64_12137 hang-p0-tan_binary64_12136 hang-0m-tan_binary64_12135 hang-0p-tan_binary64_12134 tan-+PI/2_binary64_12133 tan-+PI_binary64_12132 tan-PI_binary64_12131 tan-PI/3_binary64_12130 tan-PI/4_binary64_12129 tan-PI/6_binary64_12128 cos-+PI/2_binary64_12127 cos-+PI_binary64_12126 cos-PI_binary64_12125 cos-PI/2_binary64_12124 cos-PI/3_binary64_12123 cos-PI/4_binary64_12122 cos-PI/6_binary64_12121 sin-+PI/2_binary64_12120 sin-+PI_binary64_12119 sin-PI_binary64_12118 sin-PI/2_binary64_12117 sin-PI/3_binary64_12116 sin-PI/4_binary64_12115 sin-PI/6_binary64_12114 sub-1-sin_binary64_12113 sub-1-cos_binary64_12112 -1-add-sin_binary64_12111 -1-add-cos_binary64_12110 1-sub-sin_binary64_12109 1-sub-cos_binary64_12108 cos-sin-sum_binary64_12107 log-E_binary64_12103 log-pow_binary64_12102 log-rec_binary64_12101 pow-base-0_binary64_12097 unpow1/3_binary64_12080 unpow1/2_binary64_12077 exp-to-pow_binary64_12075 pow-base-1_binary64_12073 unpow0_binary64_12072 unpow1_binary64_12071 unpow-1_binary64_12070 exp-lft-cube_binary64_12069 exp-lft-sqr_binary64_12068 exp-cbrt_binary64_12067 exp-sqrt_binary64_12066 exp-neg_binary64_12060 e-exp-1_binary64_12058 exp-1-e_binary64_12056 exp-0_binary64_12055 rem-log-exp_binary64_12054 rem-exp-log_binary64_12053 cube-neg_binary64_12040 rem-3cbrt-rft_binary64_12039 rem-3cbrt-lft_binary64_12038 rem-cbrt-cube_binary64_12037 rem-cube-cbrt_binary64_12036 sqr-abs_binary64_12028 sqr-neg_binary64_12027 rem-sqrt-square_binary64_12026 rem-square-sqrt_binary64_12025 unsub-neg_binary64_12007 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 mul0-rgt_binary64_11996 mul0-lft_binary64_11995 div0_binary64_11994 +-inverses_binary64_11992 lft-mult-inverse_binary64_11991 rgt-mult-inverse_binary64_11990 difference-of-sqr--1_binary64_11984 difference-of-sqr-1_binary64_11983 cancel-sign-sub_binary64_11978 distribute-frac-neg_binary64_11976 distribute-neg-out_binary64_11975 distribute-rgt-neg-out_binary64_11973 distribute-rgt1-in_binary64_11969 distribute-lft1-in_binary64_11968 distribute-lft-out--_binary64_11965 distribute-lft-out_binary64_11964 count-2_binary64_11961 associate--l-_binary64_11951 associate-+l-_binary64_11948 associate-+l+_binary64_11946
Counts
370 → 869
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058912784
1167812643

prune915.0ms (4%)

Pruning

7 alts after pruning (3 fresh and 4 done)

PrunedKeptTotal
New8690869
Fresh033
Picked011
Done033
Total8697876
Error
0.2b
Counts
876 → 7
Compiler

Compiled 26263 to 3417 computations (87% saved)

regimes2.4s (10.5%)

Accuracy

Total 6.5b remaining (99.4%)

Threshold costs 0b (0%)

Compiler

Compiled 16050 to 10716 computations (33.2% saved)

bsearch7.0ms (0%)

Compiler

Compiled 13 to 11 computations (15.4% saved)

simplify41.0ms (0.2%)

Algorithm
egg-herbie
Rules
45×+-commutative_binary64_11943
37×*-commutative_binary64_11944
32×sub-neg_binary64_12006
25×neg-mul-1_binary64_12009 neg-sub0_binary64_12008
15×distribute-rgt-neg-in_binary64_11971 distribute-lft-neg-in_binary64_11970
10×unsub-neg_binary64_12007
distribute-neg-in_binary64_11974
distribute-neg-frac_binary64_11977
distribute-neg-out_binary64_11975
cancel-sign-sub-inv_binary64_11979
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_12273 if-if-and_binary64_12272 if-if-or-not_binary64_12271 if-if-or_binary64_12270 if-not_binary64_12269 if-same_binary64_12268 if-false_binary64_12267 if-true_binary64_12266 tan-0_binary64_12142 cos-0_binary64_12141 sin-0_binary64_12140 unpow1_binary64_12071 e-exp-1_binary64_12058 1-exp_binary64_12057 exp-1-e_binary64_12056 exp-0_binary64_12055 sqr-abs_binary64_12028 sqr-neg_binary64_12027 mul-1-neg_binary64_12005 /-rgt-identity_binary64_12004 *-rgt-identity_binary64_12003 *-lft-identity_binary64_12002 remove-double-neg_binary64_12001 sub0-neg_binary64_12000 --rgt-identity_binary64_11999 +-rgt-identity_binary64_11998 +-lft-identity_binary64_11997 cancel-sign-sub_binary64_11978 distribute-frac-neg_binary64_11976 distribute-rgt-neg-out_binary64_11973 distribute-lft-neg-out_binary64_11972
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
063264
1104264
2145262
3209262
4267262
5294262
6305262
7307262
Proof
(if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (- f64 (+ f64 h0 (* f64 (/ f64 h2 (- f64 h4 h2)) h0)) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h3 h1) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h3 h2) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (=> (- f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) sub-neg_binary64_12006 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (=> (* f64 (/ f64 h3 (- f64 h4 h2)) h1)) (- f64 (+ f64 h0 (* f64 (/ f64 h2 (- f64 h4 h2)) h0)) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h3 h1) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h3 h2) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (=> (* f64 (/ f64 h2 (- f64 h4 h2)) h0))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h3 h1) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h3 h2) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (=> (* f64 (/ f64 h3 (- f64 h4 h2)) h2)) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h3 h1) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h3 h2) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h3 h1) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (=> (* f64 h3 h2)) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (* f64 h3 h1) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (=> (* f64 h3 h1)) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h4 h0) h2) (/ f64 (=> (* f64 h3 h1)) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (=> (* f64 h4 h0)) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h1 h0) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (=> (* f64 h1 h0)) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (=> (* f64 (/ f64 h1 (- f64 h4 h2)) h0))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0)) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (=> (+ f64 (/ f64 (* f64 h2 h0) (- f64 h4 h2)) h0))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) +-commutative_binary64_11943 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (=> (* f64 h2 h0)) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (=> (+ f64 (neg f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))) (neg f64 (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0))))))))) distribute-neg-out_binary64_11975 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (=> (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h1) (neg f64 (+ f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0))))))))) unsub-neg_binary64_12007 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (- f64 (=> (* f64 (/ f64 h3 (- f64 h4 h2)) h1)) (+ f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (- f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (=> (+ f64 (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2)))) (+ f64 (* f64 (/ f64 h3 (- f64 h4 h2)) h2) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)))))))) +-commutative_binary64_11943 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (- f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (+ f64 (+ f64 (=> (* f64 (/ f64 h3 (- f64 h4 h2)) h2)) (* f64 (/ f64 h1 (- f64 h4 h2)) h0)) (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (- f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (+ f64 (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (=> (* f64 (/ f64 h1 (- f64 h4 h2)) h0))) (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2))))))))) *-commutative_binary64_11944 => (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) -4184115911038703/35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304) (+ f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (- f64 (+ f64 h0 (* f64 h0 (/ f64 h2 (- f64 h4 h2)))) (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 0) (- f64 (+ f64 h3 (+ f64 (/ f64 (* f64 h0 h1) h2) (/ f64 (* f64 h3 h4) h2))) (+ f64 (/ f64 (* f64 h0 h4) h2) (/ f64 (* f64 h1 h3) h2))) (if real (<= f64 (+ f64 h0 (/ f64 (* f64 (- f64 h1 h2) (- f64 h3 h0)) (- f64 h4 h2))) 1148576243067455866262329318104629074985349418267509077261441525051050309139515931524858616038823686807935930579604504110976949181427064121047342943327299413164029968097396449107665231370574116941925494433084819311579826704835349708959013857348737058513061627528512033902805640380952872757161493770838999040) (- f64 (+ f64 (/ f64 (* f64 h1 h3) (- f64 h4 h2)) (+ f64 h0 (/ f64 (* f64 h0 h2) (- f64 h4 h2)))) (+ f64 (/ f64 (* f64 h0 h1) (- f64 h4 h2)) (/ f64 (* f64 h2 h3) (- f64 h4 h2)))) (- f64 (* f64 h1 (/ f64 h3 (- f64 h4 h2))) (+ f64 (+ f64 (* f64 h2 (/ f64 h3 (- f64 h4 h2))) (* f64 h0 (/ f64 h1 (- f64 h4 h2)))) (* f64 h0 (+ f64 (/ f64 h4 h2) (* f64 (/ f64 h4 h2) (/ f64 h4 h2)))))))))

end0.0ms (0%)

sample2.7s (12%)

Algorithm
intervals
Results
270.0ms6712×body128valid
58.0ms363×body1024valid
51.0ms491×body512valid
48.0ms1190×body128invalid
26.0ms362×body256valid
13.0ms72×body2048valid
Compiler

Compiled 2898 to 1870 computations (35.5% saved)

Profiling

Loading profile data...