Mathematics•Factoring
Classical Factoring: Trial Division, Fermat and Lehman
The elementary methods that still run first in every factoring pipeline, and the arithmetic identity behind all difference-of-squares approaches.
Cheap methods first — they remove most of the work
Trial division by small primes removes small factors at negligible cost and is always the first stage of any factoring pipeline. Fermat's method attacks the opposite extreme, factoring quickly when the two factors are close together, by searching for a representation of n as a difference of squares. Lehman's method interpolates between them, guaranteeing a factor in O(n1/3) operations — the identity behind Fermat is also the identity behind the quadratic sieve and the number field sieve.
Learning objectives
- Implement trial division with a wheel and state its cost.
- Apply Fermat's method and identify when it is fast.
- Explain Lehman's multiplier trick and its complexity.
- Describe the difference-of-squares identity common to modern sieves.
- Order the stages of a practical factoring pipeline.
Section 01Trial division
Dividing by 2, 3, 5 and then by numbers coprime to them — a wheel — removes small factors efficiently. A wheel modulo 30 tests only 8 of every 30 candidates, a saving of more than 70% over testing all odd numbers.
- Remove all factors of 2, 3 and 5 by repeated division.
- Set d ← 7 and cycle the increments 4, 2, 4, 2, 4, 6, 2, 6. These skip every multiple of 2, 3 and 5.
- While d2 ≤ n: while d divides n, record d and divide it out.
- Advance d by the next increment in the cycle.
- If n > 1 after the loop, n itself is prime.
Trial division should be run to a fixed bound, not to √n. Beyond about 106 every stronger method is faster per factor found. The purpose of this stage is to remove the many small factors cheaply, not to complete the factorisation.
Section 02Fermat's method
If n = ab with a, b both odd, then
So the search starts at x = ⌈√n⌉ and increments, testing whether x2 − n is a perfect square. When the factors are close, y is small and the search terminates almost immediately.
For n = 2p with p large, x must climb to roughly n/4 before y becomes an integer — worse than trial division. Fermat's method is a special-case tool, and its inclusion in a pipeline should be bounded by a small iteration budget.
Every modern general-purpose factoring algorithm — the continued fraction method, the quadratic sieve, the number field sieve — seeks a congruence x² ≡ y² (mod n) with x ≢ ±y, then takes gcd(x − y, n). They differ only in how the congruence is manufactured. Fermat's method is the direct, and worst, way of finding one.
Section 03Lehman's method
Lehman's improvement applies Fermat's search not to n but to kn for a range of small multipliers k. A suitable multiplier makes the two factors of kn nearly equal, which is exactly the case Fermat handles well.
- Trial divide n by all integers up to n1/3. This handles every factor below the bound.
- For k = 1 to n1/3:
- For x in a short range starting at ⌈√(4kn)⌉:
- If x2 − 4kn is a perfect square y2, then gcd(x + y, n) is a non-trivial factor.
- If nothing is found, n is prime.
Lehman's method was the first to beat the √n barrier deterministically. It is superseded in practice by ρ, p−1 and ECM, but it remains the clean example of how a multiplier can reshape a problem into a favourable case.
Section 04The pipeline
- Stage 01Trial divisionTo about 106. Removes most factors at negligible cost.
- Stage 02Perfect power testDetect n = mk; several later methods misbehave on perfect powers.
- Stage 03Compositeness testA strong probable prime test — there is no point factoring a prime.
- Stage 04Mid-range methodsPollard ρ and SQUFOF for factors up to about 20 digits; p−1 for smooth cases.
- Stage 05ECMFinds factors up to 50 or 60 digits, with cost governed by the factor size.
- Stage 06SievesMPQS or the number field sieve, whose cost depends on the size of n itself.
Running a sieve before ECM wastes enormous effort when a mid-sized factor exists. Equally, each factor found must be tested for primality and the cofactor fed back through the pipeline — a composite cofactor left unfactored is a silently incomplete result.
ReferenceFrequently asked questions
Is trial division ever the best complete method?
For numbers up to about 12 digits, yes — a wheel with a precomputed prime table completes faster than the setup cost of any sophisticated method. Small-input performance matters because factoring routines are called recursively on cofactors.
Why test for perfect powers explicitly?
Because Pollard's rho degenerates on them, ECM can behave unpredictably, and the sieves assume a composite with distinct factors. The test costs almost nothing and prevents several failure modes at once.
Does Fermat's method have any modern use?
As a bounded check for the specific weakness of nearly-equal factors, which occasionally arises from poor RSA key generation. Run for a few thousand iterations it costs almost nothing and occasionally succeeds outright.
NavigateContinue in this stream
Curated next steps from this page. The site also surfaces algorithmically related reading below.
ProvenanceSources and further reading
This page is an original KEVOS explanatory article. It presents the underlying mathematics — definitions, algorithms, complexity results and selection criteria — in KEVOS editorial voice. No text is reproduced from any copyrighted source. Where numerical tables are relevant, KEVOS links to live authoritative databases rather than republishing static values.
Handbook application: from concept to controlled practice
Purpose. This expanded section turns the original page into a practical handbook. It preserves the supplied material and adds a repeatable way to apply, check and review Classical Factoring: Trial Division, Fermat and Lehman. It does not replace a contract, legislation, a controlled standard, competent engineering judgement or specialist advice.
The operating aim is to turn a compact mathematical statement into a usable chain of definitions, claims, examples and checks. Read the original explanation first, then use the workflow and checks below to convert knowledge into evidence.
Treat Classical Factoring: Trial Division, Fermat and Lehman as a network of definitions and implications, not as a list of formulas. The working vocabulary on this page—trial, division, method, section, factorisation—should be made explicit before any proof or computation begins. Record the ambient set or structure, the permitted operations and the equality or equivalence relation in use. A compact theorem often changes meaning when the base field, finiteness condition, commutativity assumption or direction of an action changes.
For a proof, write the hypotheses as a checklist and mark the line at which each one is used. For a computation, state the representation of the input, the arithmetic model, the termination condition and the output invariant. For a classification problem, distinguish existence from uniqueness and distinguish an object from its representation. These separations prevent a correct local calculation from being mistaken for the general result.
A useful worked example should be small enough to inspect completely but rich enough to exercise the main mechanism. Compute the result in two ways where practical: symbolically and by substitution, structurally and numerically, or directly and through a normal form. Then include one near-miss example in which a hypothesis fails. The contrast explains why the theorem is shaped as it is and gives the reader a diagnostic pattern for later problems.
Verification is part of the mathematics. Check domains and codomains, substitute proposed solutions, test identity and zero cases, compare dimensions or cardinalities, and confirm that maps respect the required operations. In numerical work, report precision, conditioning and a residual rather than digits alone. In algorithmic work, separate mathematical correctness from implementation complexity and resource limits.
Step-by-step operating method
- Fix the setting. State the objects, ambient structure, notation and assumptions before manipulating symbols.
- Separate claims. Distinguish definitions, hypotheses, conclusions, equivalent conditions and consequences.
- Choose a method. Select proof, construction, calculation or algorithm according to the question actually asked.
- Work a small case. Use the smallest non-trivial example to expose the mechanism and test edge behaviour.
- Verify independently. Substitute back, check invariants, test boundary cases or use an alternative derivation.
Worked-example protocol
Illustrative method—not a source theorem. Start with a small admissible input and list the definitions it must satisfy. Carry out each transformation on a separate line, citing the property that permits it. Preserve exact values until approximation is necessary. At the end, verify the output against the original definition and one invariant such as dimension, degree, determinant, order, norm or residual. Then alter one hypothesis and observe which step ceases to be valid. This protocol creates a reusable example without inventing a theorem-specific numerical answer.
| Stage | Record | Quality check |
|---|---|---|
| Input | Objects, domain, notation, assumptions | Every symbol is defined |
| Method | Permitted operation or cited result at each step | All hypotheses hold |
| Output | Exact result and representation | Correct type, domain and form |
| Verification | Substitution, invariant or alternative derivation | Independent agreement |
| Boundary test | Zero, identity, degenerate or failed hypothesis | Scope is understood |
Common failure modes and recovery actions
1. Watch for
Using a theorem without checking every hypothesis.
Recovery: Return to the governing definition or requirement and restate the decision in one sentence.
2. Watch for
Treating a suggestive example as a proof of the general case.
Recovery: Separate evidence from assumption, assign an owner and set a date for validation.
3. Watch for
Changing notation or conventions part-way through an argument.
Recovery: Run a small counterexample, boundary test, pilot or independent check before proceeding.
4. Watch for
Hiding a division-by-zero, convergence, finiteness or commutativity assumption.
Recovery: Record the consequence, decision and rationale, then update the controlled baseline.
5. Watch for
Reporting a computed result without a residual, substitution or structural check.
Recovery: Escalate when the issue affects safety, compliance, acceptance, material value or an agreed tolerance.
Review checklist
- Can every symbol be traced to a definition or prior result?
- Which hypothesis does each major step use?
- Does the method cover zero, identity, degenerate and boundary cases?
- Can the conclusion be checked by a second representation or calculation?
- Are mandatory requirements distinguished from recommendations and illustrative values?
- Are sources, assumptions, units, dates and versions recorded closely enough to reproduce the decision?
- Have safety, legal, ethical, stakeholder and operational consequences been considered at the appropriate level?
- Is there a named owner and a trigger for review, escalation, change or retirement?
Questions for deeper application
What is the most important distinction a practitioner must preserve when applying Classical Factoring: Trial Division, Fermat and Lehman?
Answer with a fact or cited source where available. Where evidence is incomplete, record the assumption, consequence, responsible owner and next validation action.
Which assumption about trial would change the result most if it proved false?
Answer with a fact or cited source where available. Where evidence is incomplete, record the assumption, consequence, responsible owner and next validation action.
What evidence would allow an independent reviewer to reproduce or challenge the conclusion?
Answer with a fact or cited source where available. Where evidence is incomplete, record the assumption, consequence, responsible owner and next validation action.
Which boundary, exception or failure case has not yet been tested?
Answer with a fact or cited source where available. Where evidence is incomplete, record the assumption, consequence, responsible owner and next validation action.
What must be handed over, monitored or reviewed after the immediate work is complete?
Answer with a fact or cited source where available. Where evidence is incomplete, record the assumption, consequence, responsible owner and next validation action.
Authoritative references and use notes
The sources below were selected as institutional or primary guidance for the broader practice. They support the handbook method; they do not imply that every statement or clause in a source applies to every project. Confirm the current edition, jurisdiction, contract and application before treating any requirement as mandatory.
- MIT OpenCourseWare — Number Theory I — Massachusetts Institute of Technology. Used for algebraic and analytic number theory. Accessed 2026-08-13.
- MIT OpenCourseWare — Algebra I — Massachusetts Institute of Technology. Used for groups, vector spaces, linear transformations and linear groups. Accessed 2026-08-13.
- Page ID
- KV-MATH-0049
- Taxonomy
- ENG-MATH — Engineering / Mathematics
- Collection
- COL-CANT-001
- Topic stream
- CANT-FACTORING
- Version
- 1.1.0 / content 2026.08
- Last reviewed
- 2026-08-06
