std::vector<int> qlsts;
for (std::size_t j = r; j >= 1; --j) {
qlstx.push_back(cln::cl_N(1) - x[j-1]);
- if (instanceof(x[j-1], cln::cl_R_ring) &&
- realpart(x[j-1]) > 1 && realpart(x[j-1]) <= 2) {
- qlsts.push_back(s[j-1]);
+ if (instanceof(x[j-1], cln::cl_R_ring) && realpart(x[j-1]) > 1) {
+ qlsts.push_back(1);
} else {
qlsts.push_back(-s[j-1]);
}
need_hoelder = true;
}
}
- if (zerop(x[x.size() - 1])) {
- have_trailing_zero = true;
+ have_trailing_zero = zerop(x.back());
+ if (have_trailing_zero) {
need_trafo = true;
+ if (y != 1) {
+ need_hoelder = false;
+ }
}
if (depth == 1 && x.size() == 2 && !need_trafo)
return - Li_projection(2, y/x[1], cln::float_format(Digits));
// do acceleration transformation (hoelder convolution [BBB])
- if (need_hoelder && !have_trailing_zero)
+ if (need_hoelder)
return G_do_hoelder(x, s, y);
// convergence transformation