Polynomial division by convolution - quotient and reminder

Division of two polynomials to get quotient and reminder using convolution matrix.

You are now following this Submission

Polynomial division by convolution matrix approach.

Given b(x) and a(x), and find q(x) and r(x) in
b(x) = a(x)*q(x) + r(x)
where
b(x) = b(0)+ ... +b(k)*x^k + ... +b(n)*x^n
a(x) = a(0)+ ... +a(k)*x^k + ... +a(m)*x^m
q(x) = q(0)+ ...+ q(k)*x^k + ... +q(n-m)*x^(n-m)
r(x) = r(0)+ ...+ r(k)*x^k + ... +r(m-1)*x^(m-1)

If coefficients of b(x) and a(x) are all integers, then the entire process may involve mostly integer arithmetric operations. The roundoff errors may thus be eliminated.

This code is similar to the MATLAB's built-in function: 'deconv.m'.

Cite As

Feng Cheng Chang (2026). Polynomial division by convolution - quotient and reminder (https://www.mathworks.com/matlabcentral/fileexchange/19565-polynomial-division-by-convolution-quotient-and-reminder), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.34.0.0

update the m file

1.33.0.0

Update the m-file, to include any polynomials with both leading and trailing zero coefficients.

1.32.0.0

Correct typo in Description, and update the M-file.

1.0.0.0