KEVOS
ArticlesServicesCase studiesAboutContact
ArticlesServicesCase studiesAboutContact
← ArticlesAlgorithm Notation and Complexity ConventionsEngineering · Engineering MathematicsLesson 703/884← PrevNext →
ArticlePublished 7 Aug 20263 min readBy Kevin Jogincomplexitybig O notationcost modelsub-exponential
On this page

Ask about this page

KEVOS AIAlgorithm Notation and Complexity Conventions

KEVOS knowledge first · trusted web sources when needed

Orientation

Algorithm Notation and Complexity Conventions

The notation, cost model and complexity conventions used throughout this collection, including the sub-exponential L-function.

Engineering / MathematicsOrientation3 min readKV-MATH-0502

Cost statements in computational number theory are only meaningful relative to a stated model. This page fixes the conventions used everywhere else in the collection.

The cost model

Costs are counted in bit operations unless stated otherwise. The alternative — counting arithmetic operations on machine words — hides exactly the growth that dominates in this subject, because the numbers involved routinely exceed a machine word by orders of magnitude.

Conventions

Input sizeThe number of bits, written n, not the value
MultiplicationM(n) denotes the cost of multiplying two n-bit integers
DivisionAssumed O(M(n)) up to constants
MemoryCounted when it is the binding constraint, which for sieving methods it usually is

Note

Writing M(n) rather than a fixed exponent keeps every downstream bound honest. An algorithm quoted as O(M(n) log n) automatically improves when the multiplication routine does.

Asymptotic notation

O(f(n))
Bounded above by a constant multiple of f(n) for large n. The default in this collection.
Omega(f(n))
Bounded below similarly.
Theta(f(n))
Bounded both above and below.
o(f(n))
Grows strictly slower than f(n).
Soft-O
Written with a tilde; suppresses logarithmic factors. Useful when those factors are not the point.

Pitfall

Asymptotic notation conceals constants, and in this subject the constants are frequently decisive. The number field sieve beats the quadratic sieve asymptotically but loses to it below roughly 100 digits because its constant factor is much larger.

The sub-exponential L-function

Integer factorisation and class group computation both run in time that is neither polynomial nor exponential in the input size. The standard notation for this middle range is:

L_N(a, c) = exp( (c + o(1)) (log N)^a (log log N)^(1-a) )N is the number being processed; a lies in [0,1]; c is positive.

The parameter a is what matters. It interpolates between the two familiar regimes and gives a single scale on which to compare methods.

Reading the parameter a in L_N(a, c)
Value of aRegimeExample
a = 0Polynomial in log NModular exponentiation
a = 1/2Classic sub-exponentialQuadratic sieve, ECM, class group methods
a = 1/3Improved sub-exponentialNumber field sieve
a = 1Exponential in log NTrial division

Key point

When comparing two sub-exponential methods, compare a first. Only if a matches does the constant c decide the winner. This is why the number field sieve eventually dominates every L(1/2) method regardless of constants.

Probabilistic and conditional results

Three qualifiers appear repeatedly and are not interchangeable.

Las Vegas

Always correct when it terminates; running time is random. Cantor-Zassenhaus splitting is of this type.

Monte Carlo

Fixed running time; may return a wrong answer with bounded probability. A single Fermat test is of this type.

Conditional on GRH

Correctness or complexity depends on an unproven hypothesis. The result is real but its status differs from an unconditional one.

Caution

A compositeness test returning "probably prime" is making a far weaker claim than a primality proof. Track which one you have — see primality certificates.

Heuristic complexity

Several headline complexities in this subject are heuristic: they rest on plausible but unproven assumptions about how often values produced by an algorithm are smooth. The number field sieve's L(1/3) bound is of this kind. These estimates match observed behaviour closely, which is why they are quoted, but they are not theorems.

Frequently Asked Questions

Why count bit operations rather than machine operations?
Because the integers involved are much larger than a machine word, so the cost of a single 'operation' varies with the size of its operands. Counting word operations would make a 10-digit and a 10,000-digit multiplication look equally cheap.
What does o(1) mean inside the L-function?
It absorbs terms that vanish as N grows. It is the reason L-function complexities should be read as asymptotic shapes rather than as formulas you can substitute into for a specific N.

Source. Henri Cohen, A Course in Computational Algebraic Number Theory, Springer GTM 138 — 1.1. Structural reference unverified: the source file was not available during authoring; chapter and section numbers are taken from the published edition and have not been checked against a physical copy.

Related pages

  • Multiprecision Integer Representation
  • Asymptotic Cost of Integer Multiplication
  • Matrix Representation and Cost Model
  • Computational Algebraic Number Theory: Field Overview
  • Learning Pathways Through Computational Number Theory

Continue learning

Computational Algebraic Number Theory: Field OverviewArticle · Engineering MathematicsNEXT LESSON →Learning Pathways Through Computational Number TheoryArticle · Engineering MathematicsThe Four Core Computational Tasks of Number FieldsArticle · Engineering MathematicsMultiprecision Integer RepresentationArticle · Engineering Mathematics
KEVOS · Engineering, manufacturing and project improvement
ArticlesServicesCase studiesAboutContact
© 2026 KEVOS®