This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Subtract polynomials over Galois field


c = gfsub(a,b,p)
c = gfsub(a,b,p,len)
c = gfsub(a,b,field)



This function performs computations in GF(pm), where p is prime. To work in GF(2m), apply the - operator to Galois arrays of equal size. For details, see Example: Addition and Subtraction.

c = gfsub(a,b,p) calculates a minus b, where a and b represent polynomials over GF(p) and p is a prime number. a, b, and c are row vectors that give the coefficients of the corresponding polynomials in order of ascending powers. Each coefficient is between 0 and p-1. If a and b are matrices of the same size, the function treats each row independently. Alternatively, a and b can be represented as polynomial character vectors.

c = gfsub(a,b,p,len) subtracts row vectors as in the syntax above, except that it returns a row vector of length len. The output c is a truncated or extended representation of the answer. If the row vector corresponding to the answer has fewer than len entries (including zeros), extra zeros are added at the end; if it has more than len entries, entries from the end are removed.

c = gfsub(a,b,field) calculates a minus b, where a and b are the exponential format of two elements of GF(pm), relative to some primitive element of GF(pm). p is a prime number and m is a positive integer. field is the matrix listing all elements of GF(pm), arranged relative to the same primitive element. c is the exponential format of the answer, relative to the same primitive element. See Representing Elements of Galois Fields for an explanation of these formats. If a and b are matrices of the same size, the function treats each element independently.


collapse all

Calculate (2+3x+x2)-(4+2x+3x2) over GF(5).

x = gfsub([2 3 1],[4 2 3],5)
x = 1×3

     3     1     3

Subtract the two polynomials and display the first two elements.

y = gfsub([2 3 1],[4 2 3],5,2)
y = 1×2

     3     1

For prime number p and exponent m, create a matrix listing all elements of GF(p^m) given primitive polynomial 2+2x+x2.

p = 3;
m = 2;
primpoly = [2 2 1];
field = gftuple((-1:p^m-2)',primpoly,p);

Subtract A4 from A2. The result is A7.

g = gfsub(2,4,field)
g = 7

Introduced before R2006a