PSLQ Algorithm

An algorithm which can be used to find integer relations between real numbers x_1, ..., x_n such that

 a_1x_1+a_2x_2+...+a_nx_n=0,

with not all a_i=0. Although the algorithm operates by manipulating a lattice, it does not reduce it to a short vector basis, and is therefore not a lattice reduction algorithm. PSLQ is based on a partial sum of squares scheme (like the PSOS algorithm) implemented using QR decomposition. It was developed by Ferguson and Bailey (1992). A much simplified version of the algorithm was subsequently developed by Ferguson et al. (1999), which also extends the algorithm to complex numbers and quaternions. Ferguson et al. (1999) also demonstrated that PSLQ is distinct from the HJLS algorithm.

The PSLQ algorithm terminates after a number of iterations bounded by a polynomial in n and uses a numerically stable matrix reduction procedure (Ferguson and Bailey 1992). PSLQ tends to be faster than the Ferguson-Forcade algorithm and LLL algorithm because of clever techniques that allow machine arithmetic to be used at many intermediate steps. The LLL algorithm, by comparison, must use moderate precision, although generally not as much as the HJLS algorithm.

While the LLL algorithm is a more general lattice reduction algorithm than PSLQ, using LLL to obtain integer relations is in some sense a "trick," whereas with PSLQ one gets either a relation or lower bounds on degrees of polynomials and sizes of coefficients for which such a relation must satisfy.

Wolfram Web Resources

Mathematica »

The #1 tool for creating Demonstrations and anything technical.

Wolfram|Alpha »

Explore anything with the first computational knowledge engine.

Wolfram Demonstrations Project »

Explore thousands of free applications across science, mathematics, engineering, technology, business, art, finance, social sciences, and more.

Computerbasedmath.org »

Join the initiative for modernizing math education.

Online Integral Calculator »

Solve integrals with Wolfram|Alpha.

Step-by-step Solutions »

Walk through homework problems step-by-step from beginning to end. Hints help you try the next step on your own.

Wolfram Problem Generator »

Unlimited random practice problems and answers with built-in Step-by-step solutions. Practice online or make a printable study sheet.

Wolfram Education Portal »

Collection of teaching and learning tools built by Wolfram education experts: dynamic textbook, lesson plans, widgets, interactive Demonstrations, and more.

Wolfram Language »

Knowledge-based programming for everyone.