Skip to content

Commit 940102e

Browse files
gr_poly_mul_karatsuba: simplify
1 parent e882beb commit 940102e

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

src/gr_poly/mul_karatsuba.c

+3-4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
(at your option) any later version. See <https://www.gnu.org/licenses/>.
1010
*/
1111

12+
#include "gr_vec.h"
1213
#include "gr_poly.h"
1314

1415
/* TODO: a self-recursive variant that can reuse scratch space. */
@@ -77,11 +78,9 @@ _gr_poly_mul_karatsuba(gr_ptr res, gr_srcptr f, slong flen, gr_srcptr g, slong g
7778
}
7879

7980
/* v -= f0 g0 */
80-
status |= _gr_poly_sub(v, v, vlen, res, 2 * m - 1, ctx);
81-
vlen = FLINT_MAX(vlen, 2 * m - 1);
81+
status |= _gr_vec_sub(v, v, res, 2 * m - 1, ctx);
8282
/* v -= f1 g1 */
83-
status |= _gr_poly_sub(v, v, vlen, GR_ENTRY(res, 2 * m, sz), f1len + g1len - 1, ctx);
84-
vlen = FLINT_MAX(vlen, f1len + g1len - 1);
83+
status |= _gr_vec_sub(v, v, GR_ENTRY(res, 2 * m, sz), f1len + g1len - 1, ctx);
8584

8685
/* Finally add the middle part. */
8786
status |= _gr_poly_add(GR_ENTRY(res, m, sz), GR_ENTRY(res, m, sz), vlen, v, vlen, ctx);

0 commit comments

Comments
 (0)