A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Shor's Algorithm

Research Depth 161 in the knowledge graph I know this Set as goal
1,098prerequisites beneath it
See this on the map →
Quantum CircuitsQuantum Fourier Transform+3 more
Shor factoring period-finding RSA cryptography

Core Idea

Shor's algorithm factors an n-bit integer in polynomial time O(n3) on a quantum computer, compared to the best known classical algorithms which are sub-exponential. It works by reducing factoring to period finding: given N to factor, choose a random a coprime to N and find the period r of the function f(x) = ax mod N using the quantum Fourier transform. From the period, factors of N can be extracted with high probability using classical number theory. Shor's algorithm threatens RSA and other cryptosystems whose security relies on the assumed classical hardness of factoring.

Explainer

Shor's algorithm is the most consequential quantum algorithm known, because it breaks the RSA cryptosystem whose security assumption is that factoring large integers is computationally hard. The algorithm runs in polynomial time on a quantum computer, while the best known classical algorithms for factoring (the general number field sieve) run in sub-exponential time exp(O(n1/3 * (log n)2/3)). If a sufficiently large quantum computer is built, RSA, Diffie-Hellman, and elliptic curve cryptography all become insecure.

The algorithm has a classical reduction and a quantum subroutine. The classical reduction uses number theory: to factor N, pick a random a < N with gcd(a, N) = 1. Find the order r of a modulo N — the smallest positive integer r such that ar = 1 (mod N). If r is even and ar/2 != -1 (mod N), then gcd(ar/2 - 1, N) and gcd(ar/2 + 1, N) are nontrivial factors of N. This reduction works with probability at least 1/2 over the random choice of a. The hard step — finding r — is where the quantum computer comes in.

The quantum subroutine creates the state (1/sqrt(2n)) sum_{x=0}^{2n - 1} |x>|ax mod N> using controlled modular exponentiation, then applies the quantum Fourier transform to the first register. Before the QFT, the first register (conditioned on the second register's measurement) is a periodic superposition with period r. After the QFT, the amplitude is concentrated at values near multiples of 2n/r. Measuring gives a value c approximately equal to j * 2n/r for some random integer j. From the fraction c/2n, the continued fraction algorithm extracts r (as the denominator of the best rational approximation with small denominator).

The resource cost is substantial but polynomial. The circuit requires O(n) qubits (where n = log N), and the modular exponentiation uses O(n3) gates (the most expensive part). The QFT itself costs only O(n2) gates. The total time is O(n3) quantum gates plus O(n3) classical post-processing. Current quantum hardware is far from factoring cryptographically relevant numbers (2048-bit RSA requires thousands of logical qubits, which in turn require millions of physical qubits with error correction). Shor's algorithm has been demonstrated on small numbers (factoring 15, 21) as proof-of-concept experiments. The practical threat timeline depends on advances in quantum hardware and error correction, but the theoretical result has already motivated the development of post-quantum cryptography — lattice-based and other schemes believed to be hard even for quantum computers.

Practice Questions 3 questions

Prerequisite Chain

Understanding ZeroThe Number ZeroCounting to FiveCounting to 10Counting to 20Counting a Set of Objects Up to 20Cardinality: The Last Number CountedMatching Numerals to QuantitiesSubitizing Small QuantitiesAddition Within 10Number Bonds to 10Addition Within 20Doubles and Near DoublesDoubles Facts Within 10Near Doubles Facts Within 20Mental Math Strategies for AdditionMental Math: Adding and Subtracting TensAddition Within 100Repeated Addition as MultiplicationMultiplication as Equal GroupsMultiplication: ArraysBasic Multiplication Facts (0s, 1s, 2s, 5s, 10s)Multiplication Facts Within 100Division as Equal SharingDivision as Grouping (Measurement Division)Division: Grouping (Repeated Subtraction) ModelDivision: Fair Sharing ModelDivision as Equal SharingDivision as GroupingBasic Division FactsDivision Facts Within 100Multiplication and Division Fact FamiliesRelationship Between Multiplication and DivisionDivision Facts as Inverse of MultiplicationRemainders and Quotients in DivisionDivision Word ProblemsMulti-Step Word ProblemsSolving Multi-Step Word ProblemsMultiplication Word ProblemsDivision Word ProblemsIntroduction to Long DivisionFactors and MultiplesPrime and Composite NumbersEquivalent FractionsRelating Fractions and DecimalsDecimal Place ValueIntegers and the Number LineComparing and Ordering IntegersAbsolute ValueAdding IntegersSubtracting IntegersMultiplying IntegersDividing IntegersUnit RatesProportionsPercent ConceptConverting Between Fractions, Decimals, and PercentsOperations with Rational NumbersTwo-Step EquationsSolving Multi-Step EquationsEquations with Variables on Both SidesAngle Pairs: Complementary, Supplementary, and VerticalParallel Lines and TransversalsCorresponding AnglesAlternate Interior AnglesTriangle Angle Sum TheoremExterior Angle TheoremTriangle Inequality TheoremSimilar Triangles: AA SimilaritySimilar Triangles: SSS and SAS SimilarityProportions in Similar TrianglesRight Triangle Trigonometry IntroductionSine, Cosine, and Tangent RatiosTrigonometric Ratios ReviewRadian MeasureConverting Between Degrees and RadiansThe Unit CircleGraphing Sine and CosineGraphing Tangent and Reciprocal Trigonometric FunctionsDerivatives of Trigonometric FunctionsAntiderivativesIndefinite IntegralsBasic Integration RulesRiemann SumsDefinite Integral DefinitionDouble Integrals: Definition and SetupIterated Integrals and Fubini's TheoremDouble Integrals over Rectangular RegionsDouble Integrals over General RegionsApplications of Double Integrals: Area, Mass, and MomentsTriple Integrals in Cartesian CoordinatesTriple Integrals in Cylindrical and Spherical CoordinatesChange of Variables and the Jacobian DeterminantApplications of Triple Integrals: Volume and MassVector Fields and Their RepresentationsLine Integrals of Vector FieldsWork and CirculationLine Integrals of Scalar and Vector FunctionsFundamental Theorem for Line IntegralsConservative Vector FieldsConservative Vector Fields and Potential FunctionsCurl and Divergence of Vector FieldsCurl and DivergenceDivergence TheoremElectric Flux and Divergence TheoremGauss's Law: Integral Form and MeaningSolving Problems with Gauss's LawConductors in Electrostatic EquilibriumCapacitance and CapacitorsDielectricsDielectric Constant and Relative PermittivityElectric Field Inside Dielectric MaterialsDielectric Materials and PolarizationDielectric Susceptibility and PermittivityEnergy Density in Electric FieldsElectric Current and Current DensityElectrical Resistance and ResistivityOhm's Law and Circuit ElementsElectromotive Force (EMF) and BatteriesKirchhoff's Circuit Laws: Voltage and CurrentDC Circuit Network Analysis MethodsTransient Response in RC CircuitsRC CircuitsLC and RLC CircuitsAC Circuits: FundamentalsImpedance and ReactanceAC Power and ResonanceElectromagnetic WavesPostulates of Special RelativityTime DilationLength ContractionLorentz TransformationRelativistic Velocity AdditionRelativistic Momentum and EnergyMass-Energy Equivalence and E=mc²Photons as Particles with Energy and MomentumPlanck-Einstein Relation: Energy and FrequencyPhotoelectric EffectThe Photon: Light as QuantaCompton ScatteringWave-Particle Dualityde Broglie WavelengthThe Schrödinger EquationState Vectors and WavefunctionsQuantum SuperpositionQuantum EntanglementBell Theorem and Bell InequalitiesPostulates of Quantum MechanicsObservables and Quantum OperatorsCommutators and Commutation RelationsQuantum Angular MomentumQuantum Mechanical Treatment of HydrogenSolving the Schrödinger Equation for Hydrogen AtomQuantum NumbersSpin-1/2 SystemsPauli MatricesQuantum GatesQuantum CircuitsDeutsch-Jozsa AlgorithmBernstein-Vazirani AlgorithmSimon's AlgorithmShor's Algorithm

Longest path: 162 steps · 1098 total prerequisite topics

Prerequisites (5)

Leads To (0)

No topics depend on this one yet.