Chemistry Reference and  Research
           
 
Periodic Table
- standard table
- large table
 
Chemical Elements
- by name
- by symbol
- by atomic number
 
Chemical Properties
 
Chemical Reactions
 
Organic Chemistry
 
Branches of Chemistry
Analytical chemistry
Biochemistry
Computational Chemistry
Electrochemistry
Environmental chemistry
Geochemistry
Inorganic chemistry
Materials science
Medicinal chemistry
Nuclear chemistry
Organic chemistry
Pharmacology
Physical chemistry
Polymer chemistry
Supramolecular Chemistry
Thermochemistry

Primitive polynomial

A primitive polynomial is the minimal polynomial of a primitive element of the extension field GF(pm).

Contents

Properties

Because all minimal polynomials are irreducible, all primitive polynomials are also irreducible.

All primitive polynomials have an odd number of terms and must have a constant term. If a primitive polynomial has no constant term then x can be factored out of it and thus it is not irreducible. If a primitive polynomial has an even number of terms then (x + a) can be factored out of it.

An irreducible polynomial of degree m, F(x) over GF(p) for prime p, is a primitive polynomial if the smallest positive integer n such that F(x) divides xn − 1 is n = pm − 1.

Over GF(pm) there are exactly φ(pm − 1)/m primitive polynomials of degree m, where φ is Euler's totient function.

The roots of a primitive polynomial all have order pm − 1.

Usage

Field element representation

Primitive polynomials are used in the representation of elements of a finite field. If α ∈ GF(pm) is a root of a primitive polynomial F(x) then since the order of α is pm − 1 that means that all elements of GF(pm) can be represented as successive powers of α:

\{ 0, 1, \alpha, \alpha^2, \ldots, \alpha^{p^m-2} \}

When these elements are reduced modulo F(x) they provide the polynomial basis representation of all the elements of the field.

Random bit generation

Primitive polynomials define a recurrence relation that can be used to generate random bits.

For example, given the primitive polynomial x10 + x3 + 1, we start with a user-specified bit seed (it need not randomly be chosen, but it can be). We then take the 10th, 3rd, and 0th bits of it, starting from the least significant bit, and xor them together, obtaining a new bit. The seed is then shifted left and the new bit is made the least significant bit of the seed. This process can be repeated to generate 210 = 1024 random bits.

In general, for a primitive polynomial of degree m, this process will generate 2m random bits before repeating the same sequence.

External links

01-04-2007 01:16:19
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License. How to see transparent copy