Factor - Maple Help

Online Help

All Products    Maple    MapleSim


Factor

inert factor function

 

Calling Sequence

Parameters

Description

Examples

References

Calling Sequence

Factor(a, K)

Parameters

a

-

multivariate polynomial

K

-

optional specification of the algebraic extension

Description

• 

The Factor function is a placeholder for representing the factorization of the polynomial a over a unique factorization domain. It is used in conjunction with either mod or evala, which define the coefficient domain as described below.

• 

The call Factor(a) mod p computes the factorization of a over the integers modulo p a prime integer. The polynomial a must have rational coefficients or coefficients from a finite field specified by RootOfs.

• 

The call Factor(a, K) mod p and computes the factorization of the polynomial a over the Galois field (finite field) defined by the algebraic extension K over the integers mod p a prime integer. The extension K is specified by a RootOf and must be irreducible over the integers mod p.

• 

The call evala(Factor(a, K)) computes the factorization of the polynomial a over an algebraic number (or function) field defined by the extension K, which is specified as a RootOf or a set of RootOfs. The polynomial a must have algebraic number (or function) coefficients.

• 

Factorization methods available are lenstra, trager, and linear. The default is trager. One selects the method by adding the name to the option set (see evala).

• 

For the factorization of a univariate polynomial over an algebraic number field, use Lenstra's factorizer. This method is sometimes faster for small degree fields than the default factorizer.

• 

For the factorization of a univariate polynomial over a finite field, Factor uses the Cantor Zassenhaus distinct degree algorithm. Berlekamp's algorithm is an alternate method that is more efficient in cases involving large p and a polynomial a that is irreducible or has few factors (see Berlekamp).

• 

The Domains package is implicitly used to factor multivariate polynomials over a Galois field defined by a single extension. It can also be used explicitly to factor over a tower of multiple algebraic extensions.

Examples

Factorx2+3x+3mod7

x+6x+4

(1)

aliasα=RootOfx2+x+1:

Factorx3+1,αmod2

x+α+1x+αx+1

(2)

aliassqrt2=RootOfx22:

evalaFactorx22,sqrt2

x+sqrt2xsqrt2

(3)

evalaFactorx22,sqrt2,lenstra

x+sqrt2xsqrt2

(4)

evalaFactorx22y2,sqrt2

sqrt2y+xsqrt2y+x

(5)

aliasβ=RootOfy2x,y:

evalaFactorxy21,β

xy+βxyβx

(6)

expandx3+y5+2xy2+3mod7

xy7+x4y2+3y5+3x3+2xy2+6

(7)

Factormod7

y5+x3+2xy2+3

(8)

Factorx2+2xy+y2+1+x+y,αmod5

y+x+α+1y+x+4α

(9)

Factorx2y+xy2+2αxy+αx2+4αx+y+αmod5

y+x+ααx+xy+1

(10)

References

  

Bernardin, Laurent, and Monagan, Michael B., "Efficient Multivariate Factorization over Finite Fields." In Proceedings of AAECC '97, pp. 15-28. Edited by Teo Mora and Harold F. Mattson. Springer, 1997.

  

Lenstra, A. K., "Lattices and Factorization of Polynomials over Algebraic Number Fields." In Proceedings of EUROCAM '82, pp. 32-39. Edited by Jacques Calmet. Springer, 1982.

See Also

AFactor

AFactors

alias

Berlekamp

Domains

Domains

evala

Expand

factor

Factors

ifactor

mod

PolynomialTools[Split]

RootOf

Sqrfree