Generating a Random k-Bit Prime with Miller-Rabin
Assembling bit-length constraint, trial division filtering and Miller-Rabin into a complete prime generator.
Engineering articles and subject areas in the KEVOS knowledge library. 1384 pages.
Assembling bit-length constraint, trial division filtering and Miller-Rabin into a complete prime generator.
Sampling a random non-increasing sequence in a bounded range, and its role as a subroutine in generating factored numbers.
Sampling uniformly from an arbitrary range using a source of random bits, and controlling the resulting bias.
Generating a random prime by repeated candidate testing, the expected number of trials, and the sieving optimisation.
Generating a uniform random prime below a bound, the analysis of the retry loop, and the resulting output distribution.
Structure-preserving maps between groups, isomorphisms, and what it means for two groups to be the same.
Families of hash functions, keyed selection, and the properties required of them in algorithm design.
Hash tables analysed with universal families: expected chain length, load factor and collision resolution.
Lifting a factorisation modulo a prime to a factorisation modulo a prime power, the quadratic variant, and the coprimality condition.
Linear systems with every constant term zero: why they are always consistent, what the trivial solution is, and why more unknowns than equations guarantees infinitely many solut…
Multiplying, inverting and dividing ideals as module operations, and controlling the growth these operations cause.
The norm of an ideal as its index in the order, its multiplicativity, and its use as a size measure and consistency check.
Finding a small ideal in a given ideal class by lattice reduction, and why reduction is the enabling step for relation collection.
Representing an ideal by two generators, why two always suffice, and the trade-off against the canonical matrix form.
Greatest common divisors defined through ideals, Bezout's identity, and why the ideal-theoretic view is the one that generalises.
Ideals, principal ideal domains, quotient rings, and the condition under which a quotient is a field.
Ideals and fractional ideals, unique factorisation into primes, and the group structure that makes the class group possible.
Computing class numbers and group structure for imaginary quadratic fields by enumerating reduced forms, and where the method runs out.
The recurring implementation errors in this subject and the testing discipline that catches them.
Practical implementation of the Jacobi sum test: precomputation, cyclotomic arithmetic, and the final divisor search.
Pivot columns make variables dependent, non-pivot columns make them free: how to partition the unknowns, count degrees of freedom and describe an infinite solution set exactly.
Countably infinite sample spaces, convergence conditions, and the geometric distribution arising from unbounded loops.
Injective (one-to-one) linear transformations: the defining condition, how to prove injectivity by reducing to a homogeneous system, and how to disprove it.
How injective linear transformations preserve linear independence, why the images of a basis decide injectivity, and why domain dimension cannot exceed codomain.
The complex inner product of two column vectors: its definition with a conjugate on the second argument, additivity, scalar rules, conjugate symmetry and positivity.
Multiprecision addition and subtraction: carry and borrow propagation, sign handling, and why both are linear.
Multiprecision division: the normalisation step, digit estimation, correction, and why division is harder to implement than multiplication.
Computing a reduced basis of the integer kernel and image of a matrix, and why this is not the same as clearing denominators from a rational kernel.
Schoolbook multiplication of multiprecision integers, the accumulator requirement, and where the quadratic cost comes from.
Newton iteration for integer square roots, exact perfect power detection, and why these cheap tests belong at the front of every factoring routine.
Running LLL entirely in integer arithmetic using scaled Gram-Schmidt quantities, and why this matters for exact downstream computation.
Solving for preimages of a subspace, extending an independent set to a basis, and the linear algebra primitives these support.
A linear transformation is invertible exactly when it is injective and surjective. Criteria, kernel and range tests, composition rules and the inverse map.
Invertible linear transformations: the identity map, the two-sided composition condition defining an inverse, uniqueness, and why the inverse is itself linear.
Recognising irreducible polynomials, the standard criteria, and counting them over a finite field.
Isogenies as maps of curves respecting the group law, and the two possible endomorphism rings over a field of characteristic zero.
Computing kernel and image bases for rectangular matrices over a field, and why the integer analogue is a different problem.
The kernel of a linear transformation: definition, why it is always a subspace, its role as the preimage of zero, and why a trivial kernel means injectivity.
The kernel and image of a homomorphism, and the first isomorphism theorem relating them to a quotient.
The L-function of an elliptic curve, the Birch-Swinnerton-Dyer conjecture, and what can and cannot be computed about rank.
Randomised complexity classes RP, co-RP, BPP and ZPP, and where primality testing sits among them.
Lattices as discrete subgroups, the Gram matrix, and the correspondence between lattices with a basis and positive definite quadratic forms.
The lattice determinant as a basis-independent invariant, the Hadamard inequality, and using the orthogonality defect to measure basis quality.
The identification of elliptic curves over the complex numbers with complex tori, and the Weierstrass function that realises it.
Suggested routes through the collection for cryptography, computer algebra, coding theory and pure mathematics readers.
Four routes through this 182-page collection, chosen by what you need to build rather than by chapter order.
The three quadratic symbols, their differing meanings, and the reciprocity-based algorithm that computes them without factoring.
Lehmer's method: running many GCD steps on single-precision leading digits before touching the full multiprecision operands.