Unique Factorization of Ideals (Theorem # 1589)
Theorem
Let $\mathfrak{a} \unlhd \mathcal{O}_L$ be a nonzero ideal. Then $\mathfrak{a}$ can be written uniquely as a product of prime ideals:
\begin{align*}
\mathfrak{a} &= \mathfrak{p}_1 \cdots \mathfrak{p}_r,
\end{align*}
where the $\mathfrak{p}_i$ are prime ideals (counted with multiplicity), unique up to reordering.
Number Theory
Algebraic Number Theory
Discussion
No discussion available for this theorem.
Proof
[proofplan]
Unique factorization of ideals in $\mathcal{O}_L$ has two halves: existence and uniqueness. For existence, we use the Noetherian property of $\mathcal{O}_L$ (ascending chains of ideals terminate) to show that any nonzero ideal $\mathfrak{a}$ is a product of prime ideals: we repeatedly "divide off" a maximal ideal containing $\mathfrak{a}$, and the process must terminate. For uniqueness, we use [Prime Ideals Divide Products](/theorems/1588) combined with the fact that nonzero prime ideals in $\mathcal{O}_L$ are maximal: given two prime factorizations, $\mathfrak{p}_1$ divides the right-hand side and hence equals some $\mathfrak{q}_i$, after which we multiply by $\mathfrak{p}_1^{-1}$ (existing in the fractional ideal group by [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586)) and induct.
[/proofplan]
[step:Set up the framework: $\mathcal{O}_L$ is Dedekind, its nonzero ideals are invertible, and nonzero primes are maximal]
We collect the standing facts about $\mathcal{O}_L$ used throughout.
1. $\mathcal{O}_L$ is a Dedekind domain by [Ring of Integers is a Dedekind Domain](/theorems/1582). In particular:
- $\mathcal{O}_L$ is Noetherian: every ascending chain of ideals stabilizes.
- Every nonzero prime ideal of $\mathcal{O}_L$ is maximal.
2. Every nonzero fractional ideal is invertible by [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586). Hence nonzero fractional ideals form a group under multiplication.
3. Divisibility and containment coincide on integral ideals by [Divisibility Equals Containment](/theorems/1587): $\mathfrak{a} \mid \mathfrak{b} \iff \mathfrak{b} \subseteq \mathfrak{a}$.
The theorem statement asserts that every nonzero integral ideal $\mathfrak{a} \unlhd \mathcal{O}_L$ admits a representation $\mathfrak{a} = \mathfrak{p}_1 \cdots \mathfrak{p}_r$ (existence) with prime factors unique up to reordering (uniqueness). The convention is that $\mathfrak{a} = \mathcal{O}_L$ corresponds to the empty product ($r = 0$).
[guided]
Before diving into the proof, let us fix what the two halves of the statement actually say.
**Existence:** For every nonzero $\mathfrak{a} \unlhd \mathcal{O}_L$, there exist nonzero prime ideals $\mathfrak{p}_1, \ldots, \mathfrak{p}_r$ (with repetitions allowed) such that $\mathfrak{a} = \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r$. The case $\mathfrak{a} = \mathcal{O}_L$ corresponds to the empty product, i.e. $r = 0$.
**Uniqueness:** If two such products agree, $\mathfrak{p}_1 \cdots \mathfrak{p}_r = \mathfrak{q}_1 \cdots \mathfrak{q}_s$, then $r = s$ and there is a permutation $\sigma$ of $\{1, \ldots, r\}$ with $\mathfrak{p}_i = \mathfrak{q}_{\sigma(i)}$ for all $i$.
**Which properties of $\mathcal{O}_L$ will we use?** The proof is essentially the Dedekind-domain proof of unique factorization of ideals; it needs exactly:
- Noetherianity, so infinite ascending chains are forbidden (used to terminate the factorization procedure).
- Every nonzero prime is maximal (used to upgrade $\mathfrak{p}_1 \subseteq \mathfrak{q}_i$ to $\mathfrak{p}_1 = \mathfrak{q}_i$).
- Existence of inverses for nonzero fractional ideals (used to cancel prime factors).
- Prime ideals divide one factor (Euclid's lemma for ideals).
The first two are packaged in $\mathcal{O}_L$ being a Dedekind domain; the third is the invertibility theorem; the fourth is [Prime Ideals Divide Products](/theorems/1588).
[/guided]
[/step]
[step:Existence — every nonzero integral ideal lies in a maximal ideal]
Let $\mathfrak{a} \unlhd \mathcal{O}_L$ be a nonzero proper ideal. We claim there exists a maximal (hence prime) ideal $\mathfrak{m}$ with $\mathfrak{a} \subseteq \mathfrak{m}$.
Since $\mathcal{O}_L$ is Noetherian, the collection of proper ideals containing $\mathfrak{a}$ is a partially ordered set in which every chain has an upper bound (the union of a chain of ideals is again an ideal, and it is still proper because the ascending chain condition forces the chain to stabilize at some proper ideal). By Zorn's lemma — or, more directly, by the Noetherian ascending chain condition — there exists a maximal element $\mathfrak{m}$ in this collection; this $\mathfrak{m}$ is a maximal ideal of $\mathcal{O}_L$ containing $\mathfrak{a}$.
By the Dedekind property, nonzero primes are maximal; conversely, maximal ideals are always prime. So $\mathfrak{m}$ is a nonzero prime.
[guided]
We need to find a maximal ideal containing our given $\mathfrak{a}$. This is the standard fact that *proper ideals are contained in maximal ideals*, which in general rings requires Zorn's lemma but in a Noetherian ring follows from the ascending chain condition directly.
**Noetherian argument.** Suppose no proper ideal containing $\mathfrak{a}$ is maximal. Then each such $\mathfrak{b} \supseteq \mathfrak{a}$ is properly contained in some still-larger proper ideal. Starting from $\mathfrak{a}_0 := \mathfrak{a}$ we inductively pick $\mathfrak{a}_{k+1} \supsetneq \mathfrak{a}_k$ still proper. This produces a strictly ascending chain
\begin{align*}
\mathfrak{a}_0 \subsetneq \mathfrak{a}_1 \subsetneq \mathfrak{a}_2 \subsetneq \cdots
\end{align*}
of proper ideals, contradicting the ascending chain condition (which $\mathcal{O}_L$ enjoys, being Noetherian by [Ring of Integers is a Dedekind Domain](/theorems/1582)).
Hence at least one proper ideal $\mathfrak{m}$ in the chain we are forced to construct is already maximal in the sense that no proper ideal strictly contains it — i.e., $\mathfrak{m}$ is a maximal ideal. Since $\mathfrak{m} \supseteq \mathfrak{a}_0 = \mathfrak{a}$, we have a maximal ideal containing $\mathfrak{a}$.
**Maximal implies prime.** Standard ring theory: if $\mathfrak{m}$ is maximal then $\mathcal{O}_L/\mathfrak{m}$ is a field, hence an integral domain, hence $\mathfrak{m}$ is prime.
So $\mathfrak{m}$ is a nonzero prime containing $\mathfrak{a}$.
[/guided]
[/step]
[step:Existence — factor off the maximal ideal to produce a strictly larger integral ideal quotient]
Let $\mathfrak{m}$ be a nonzero prime containing $\mathfrak{a}$ (from the previous step). By [Divisibility Equals Containment](/theorems/1587),
\begin{align*}
\mathfrak{a} \subseteq \mathfrak{m} \iff \mathfrak{m} \mid \mathfrak{a},
\end{align*}
so there exists an integral ideal $\mathfrak{a}_1 \unlhd \mathcal{O}_L$ with $\mathfrak{a} = \mathfrak{m}\,\mathfrak{a}_1$. Multiplying both sides by $\mathfrak{m}^{-1}$ (which exists since $\mathfrak{m}$ is a nonzero fractional ideal, by [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586)):
\begin{align*}
\mathfrak{a}_1 = \mathfrak{m}^{-1} \mathfrak{a}.
\end{align*}
We claim $\mathfrak{a}_1 \supsetneq \mathfrak{a}$. Since $\mathcal{O}_L \subseteq \mathfrak{m}^{-1}$ (a fact about fractional inverses: $\mathfrak{m}\mathfrak{m}^{-1} = \mathcal{O}_L$ and $1 \in \mathcal{O}_L$, but more directly: $\mathfrak{m}^{-1} = \{x \in L : x\mathfrak{m} \subseteq \mathcal{O}_L\}$ by the formula in [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586), and $1 \cdot \mathfrak{m} = \mathfrak{m} \subseteq \mathcal{O}_L$ gives $1 \in \mathfrak{m}^{-1}$, so $\mathcal{O}_L \subseteq \mathfrak{m}^{-1}$), we have
\begin{align*}
\mathfrak{a} = \mathcal{O}_L \mathfrak{a} \subseteq \mathfrak{m}^{-1} \mathfrak{a} = \mathfrak{a}_1.
\end{align*}
The inclusion is strict: if $\mathfrak{a}_1 = \mathfrak{a}$, then $\mathfrak{a} = \mathfrak{m} \mathfrak{a}_1 = \mathfrak{m} \mathfrak{a}$, but then [Stability Implies Integrality](/theorems/1585) applied to any $x \in \mathfrak{m}^{-1}$ would give $x \mathfrak{a} \subseteq \mathfrak{a}$, forcing $x \in \mathcal{O}_L$, i.e. $\mathfrak{m}^{-1} \subseteq \mathcal{O}_L$. Combined with $\mathcal{O}_L \subseteq \mathfrak{m}^{-1}$ this gives $\mathfrak{m}^{-1} = \mathcal{O}_L$, i.e. $\mathfrak{m} = \mathcal{O}_L$, contradicting $\mathfrak{m}$ being a proper (maximal) ideal.
Moreover $\mathfrak{a}_1 \unlhd \mathcal{O}_L$ (integral, not merely fractional): multiplying $\mathfrak{a} \subseteq \mathfrak{m}$ by $\mathfrak{m}^{-1}$ gives $\mathfrak{a}_1 = \mathfrak{m}^{-1}\mathfrak{a} \subseteq \mathfrak{m}^{-1}\mathfrak{m} = \mathcal{O}_L$.
[guided]
The strategy now is to "peel off" $\mathfrak{m}$ from $\mathfrak{a}$ and recur. Concretely, we write $\mathfrak{a} = \mathfrak{m} \mathfrak{a}_1$ with $\mathfrak{a}_1$ another integral ideal that is strictly larger than $\mathfrak{a}$. The strictness is what will let us terminate in finitely many steps.
**Factoring.** $\mathfrak{a} \subseteq \mathfrak{m}$ combined with [Divisibility Equals Containment](/theorems/1587) gives $\mathfrak{m} \mid \mathfrak{a}$: there exists an integral ideal $\mathfrak{a}_1$ with $\mathfrak{a} = \mathfrak{m}\mathfrak{a}_1$. Equivalently, $\mathfrak{a}_1 = \mathfrak{m}^{-1}\mathfrak{a}$.
**Checking $\mathfrak{a}_1$ is integral.** $\mathfrak{a} \subseteq \mathfrak{m}$ gives $\mathfrak{m}^{-1}\mathfrak{a} \subseteq \mathfrak{m}^{-1}\mathfrak{m} = \mathcal{O}_L$, so $\mathfrak{a}_1 = \mathfrak{m}^{-1}\mathfrak{a}$ is indeed contained in $\mathcal{O}_L$.
**Showing $\mathfrak{a}_1 \supsetneq \mathfrak{a}$.** Two inclusions to establish.
*Containment $\mathfrak{a} \subseteq \mathfrak{a}_1$.* We have $\mathcal{O}_L \subseteq \mathfrak{m}^{-1}$ because $1 \cdot \mathfrak{m} = \mathfrak{m} \subseteq \mathcal{O}_L$ shows $1 \in \mathfrak{m}^{-1}$ (using the explicit formula $\mathfrak{m}^{-1} = \{x \in L : x\mathfrak{m} \subseteq \mathcal{O}_L\}$ from [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586)), and $\mathfrak{m}^{-1}$ is a fractional ideal (in particular an $\mathcal{O}_L$-module), so $\mathcal{O}_L \cdot 1 \subseteq \mathfrak{m}^{-1}$. Multiplying by $\mathfrak{a}$ gives $\mathfrak{a} = \mathcal{O}_L \mathfrak{a} \subseteq \mathfrak{m}^{-1} \mathfrak{a} = \mathfrak{a}_1$.
*Strict inclusion $\mathfrak{a}_1 \neq \mathfrak{a}$.* Suppose instead $\mathfrak{a}_1 = \mathfrak{a}$, i.e. $\mathfrak{m}^{-1}\mathfrak{a} = \mathfrak{a}$. Then every $x \in \mathfrak{m}^{-1}$ satisfies $x \mathfrak{a} \subseteq \mathfrak{a}$ (since $x \mathfrak{a} \subseteq \mathfrak{m}^{-1}\mathfrak{a} = \mathfrak{a}$). By [Stability Implies Integrality](/theorems/1585, Part 1), applied with the nonzero ideal $\mathfrak{a}$, this forces $x \in \mathcal{O}_L$. Hence $\mathfrak{m}^{-1} \subseteq \mathcal{O}_L$. Combined with $\mathcal{O}_L \subseteq \mathfrak{m}^{-1}$ above, $\mathfrak{m}^{-1} = \mathcal{O}_L$. Multiplying by $\mathfrak{m}$, $\mathcal{O}_L = \mathfrak{m}\mathfrak{m}^{-1} = \mathfrak{m}$. But $\mathfrak{m}$ is a *proper* ideal (maximal, hence $\neq \mathcal{O}_L$), contradiction.
So $\mathfrak{a}_1 \supsetneq \mathfrak{a}$ strictly. The containment is strict; this is the crucial fact that forces the process below to terminate.
[/guided]
[/step]
[step:Existence — iterate and use the Noetherian condition to terminate]
Starting from $\mathfrak{a}_0 := \mathfrak{a}$, apply Steps 2–3 iteratively. At each stage, if $\mathfrak{a}_k \subsetneq \mathcal{O}_L$, choose a maximal ideal $\mathfrak{p}_{k+1} \supseteq \mathfrak{a}_k$ and define
\begin{align*}
\mathfrak{a}_{k+1} := \mathfrak{p}_{k+1}^{-1} \mathfrak{a}_k.
\end{align*}
By Step 3, $\mathfrak{a}_{k+1}$ is an integral ideal strictly containing $\mathfrak{a}_k$. This produces a strictly ascending chain
\begin{align*}
\mathfrak{a}_0 \subsetneq \mathfrak{a}_1 \subsetneq \mathfrak{a}_2 \subsetneq \cdots
\end{align*}
in the Noetherian ring $\mathcal{O}_L$. By the ascending chain condition, the chain must terminate at some $\mathfrak{a}_r = \mathcal{O}_L$. Unwinding the recurrence,
\begin{align*}
\mathfrak{a} = \mathfrak{a}_0 = \mathfrak{p}_1 \mathfrak{a}_1 = \mathfrak{p}_1 \mathfrak{p}_2 \mathfrak{a}_2 = \cdots = \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r \mathfrak{a}_r = \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r.
\end{align*}
This expresses $\mathfrak{a}$ as a product of nonzero prime ideals. Existence is established.
[guided]
**Termination — why the procedure stops.** Each step replaces $\mathfrak{a}_k$ with a strictly larger integral ideal $\mathfrak{a}_{k+1}$. The sequence $\mathfrak{a}_0 \subsetneq \mathfrak{a}_1 \subsetneq \mathfrak{a}_2 \subsetneq \cdots$ is a strictly ascending chain. But $\mathcal{O}_L$ is Noetherian, so there is no such infinite chain: after finitely many steps, no further strict extension is possible. The only integral ideal with no proper strict extension *inside the set of proper ideals* is $\mathcal{O}_L$ itself (every proper ideal is contained in some maximal ideal, which is properly larger). Hence the chain terminates at $\mathfrak{a}_r = \mathcal{O}_L$ for some $r \geq 0$.
**Unwinding.** We have
\begin{align*}
\mathfrak{a} &= \mathfrak{a}_0 = \mathfrak{p}_1 \mathfrak{a}_1 \\
&= \mathfrak{p}_1 (\mathfrak{p}_2 \mathfrak{a}_2) = \mathfrak{p}_1 \mathfrak{p}_2 \mathfrak{a}_2 \\
&\;\vdots \\
&= \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r \mathfrak{a}_r = \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r \cdot \mathcal{O}_L \\
&= \mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r.
\end{align*}
This gives the desired factorization $\mathfrak{a} = \mathfrak{p}_1 \cdots \mathfrak{p}_r$.
**Boundary case.** If $\mathfrak{a} = \mathcal{O}_L$ to begin with, the procedure terminates at step $0$ and we get the empty product ($r = 0$), which represents $\mathcal{O}_L$ by convention. If $\mathfrak{a}$ is itself a prime ideal, we get $r = 1$ and $\mathfrak{p}_1 = \mathfrak{a}$.
[/guided]
[/step]
[step:Uniqueness — a prime $\mathfrak{p}_1$ dividing $\mathfrak{q}_1 \cdots \mathfrak{q}_s$ must equal some $\mathfrak{q}_i$]
Suppose
\begin{align*}
\mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_1 \mathfrak{q}_2 \cdots \mathfrak{q}_s
\end{align*}
with all $\mathfrak{p}_i, \mathfrak{q}_j$ nonzero prime ideals. We show $r = s$ and the two sequences agree up to reordering, by induction on $r$ (with $r = 0$ as base).
[claim:A prime ideal divides a product of primes iff it equals one of them]
Let $\mathfrak{p}, \mathfrak{q}_1, \ldots, \mathfrak{q}_s \unlhd \mathcal{O}_L$ be nonzero prime ideals. If $\mathfrak{p} \supseteq \mathfrak{q}_1 \cdots \mathfrak{q}_s$, then $\mathfrak{p} = \mathfrak{q}_j$ for some $j$.
[/claim]
[proof]
Induction on $s$. For $s = 1$: $\mathfrak{p} \supseteq \mathfrak{q}_1$ means $\mathfrak{q}_1 \subseteq \mathfrak{p}$. Since $\mathfrak{q}_1$ is a nonzero prime, it is maximal (by $\mathcal{O}_L$ Dedekind); as $\mathfrak{p}$ is proper ($\mathfrak{p} \neq \mathcal{O}_L$, by being prime), and $\mathfrak{q}_1$ is already maximal within proper ideals, the only way $\mathfrak{q}_1 \subseteq \mathfrak{p}$ with both proper is $\mathfrak{q}_1 = \mathfrak{p}$.
For the inductive step $s \geq 2$: We have $\mathfrak{p} \supseteq \mathfrak{q}_1 \cdot (\mathfrak{q}_2 \cdots \mathfrak{q}_s)$. By [Prime Ideals Divide Products](/theorems/1588), applied with $\mathfrak{a} = \mathfrak{q}_1$, $\mathfrak{b} = \mathfrak{q}_2 \cdots \mathfrak{q}_s$, and the prime ideal $\mathfrak{p}$:
\begin{align*}
\mathfrak{q}_1 \subseteq \mathfrak{p} \quad \text{or} \quad \mathfrak{q}_2 \cdots \mathfrak{q}_s \subseteq \mathfrak{p}.
\end{align*}
In the first case, the base case $s = 1$ gives $\mathfrak{q}_1 = \mathfrak{p}$. In the second case, the inductive hypothesis applied to the $s - 1$ primes $\mathfrak{q}_2, \ldots, \mathfrak{q}_s$ gives $\mathfrak{p} = \mathfrak{q}_j$ for some $j \in \{2, \ldots, s\}$. Either way, $\mathfrak{p}$ equals one of the $\mathfrak{q}_j$.
[/proof]
Applying the claim with $\mathfrak{p} = \mathfrak{p}_1$ to the hypothesis $\mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_1 \mathfrak{q}_2 \cdots \mathfrak{q}_s$ (which in particular gives $\mathfrak{p}_1 \supseteq \mathfrak{q}_1 \cdots \mathfrak{q}_s$, since $\mathfrak{p}_1$ divides the LHS, hence the RHS, hence contains it by [Divisibility Equals Containment](/theorems/1587)), we deduce $\mathfrak{p}_1 = \mathfrak{q}_j$ for some $j$. After reindexing the $\mathfrak{q}$'s (reordering the right-hand product is allowed since ideal multiplication is commutative), we may assume $j = 1$, so $\mathfrak{p}_1 = \mathfrak{q}_1$.
[guided]
The uniqueness argument is the classical one: match up the first factor, cancel it, induct.
**Key fact.** A prime $\mathfrak{p}$ containing a product $\mathfrak{q}_1 \cdots \mathfrak{q}_s$ of primes must equal one of them. This is proved by induction on $s$ using [Prime Ideals Divide Products](/theorems/1588).
**Base case $s = 1$.** We have $\mathfrak{q}_1 \subseteq \mathfrak{p}$, with $\mathfrak{q}_1$ nonzero prime (hence maximal in a Dedekind domain) and $\mathfrak{p}$ proper. Since $\mathfrak{q}_1$ is maximal among proper ideals and $\mathfrak{p}$ is one such ideal containing $\mathfrak{q}_1$, we have $\mathfrak{q}_1 = \mathfrak{p}$ (by maximality, either $\mathfrak{q}_1 = \mathfrak{p}$ or $\mathfrak{p} = \mathcal{O}_L$, and the latter is excluded since $\mathfrak{p}$ is proper).
**Inductive step.** [Prime Ideals Divide Products](/theorems/1588) gives $\mathfrak{q}_1 \subseteq \mathfrak{p}$ or $\mathfrak{q}_2 \cdots \mathfrak{q}_s \subseteq \mathfrak{p}$. The first case reduces to the base case ($\mathfrak{p} = \mathfrak{q}_1$). The second case reduces to the $(s-1)$-version of the statement, which the inductive hypothesis handles.
**Applying the fact.** From the factorization equation, $\mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_1 \cdots \mathfrak{q}_s$, we read off that $\mathfrak{p}_1$ divides the right-hand side (since $\mathfrak{p}_1$ divides the left). By [Divisibility Equals Containment](/theorems/1587), $\mathfrak{p}_1 \supseteq \mathfrak{q}_1 \cdots \mathfrak{q}_s$. The key fact then gives $\mathfrak{p}_1 = \mathfrak{q}_j$ for some $j$; relabelling, assume $j = 1$.
[/guided]
[/step]
[step:Uniqueness — cancel the matched prime and induct]
After the matching $\mathfrak{p}_1 = \mathfrak{q}_1$ (possibly after reordering the $\mathfrak{q}$'s), multiply both sides of
\begin{align*}
\mathfrak{p}_1 \mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_1 \mathfrak{q}_2 \cdots \mathfrak{q}_s
\end{align*}
by $\mathfrak{p}_1^{-1} = \mathfrak{q}_1^{-1}$ (which exists as a fractional ideal by [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586)):
\begin{align*}
\mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_2 \cdots \mathfrak{q}_s.
\end{align*}
The induction hypothesis (on $r$) applied to this equation of products of $r - 1$ primes against $s - 1$ primes gives $r - 1 = s - 1$ (so $r = s$) and a matching of the remaining primes up to reordering. Combined with $\mathfrak{p}_1 = \mathfrak{q}_1$ (possibly after the earlier relabelling), we obtain a matching of all $r = s$ primes up to reordering.
**Base case of the induction: $r = 0$.** If $r = 0$, the left-hand side is the empty product $\mathcal{O}_L$. If $s > 0$, then $\mathfrak{q}_1 \cdots \mathfrak{q}_s \subsetneq \mathcal{O}_L$ (because each $\mathfrak{q}_i \subsetneq \mathcal{O}_L$ — primes are proper — and the product is contained in each factor, hence in $\mathfrak{q}_1 \subsetneq \mathcal{O}_L$). This contradicts the equation $\mathcal{O}_L = \mathfrak{q}_1 \cdots \mathfrak{q}_s$. So $s = 0$ as well.
[guided]
**Cancellation.** Both $\mathfrak{p}_1 = \mathfrak{q}_1$ are nonzero (hence invertible as fractional ideals by [Every Nonzero Fractional Ideal Is Invertible](/theorems/1586)). Multiplying the factorization equality by $\mathfrak{p}_1^{-1}$:
\begin{align*}
\mathfrak{p}_2 \cdots \mathfrak{p}_r = \mathfrak{q}_2 \cdots \mathfrak{q}_s.
\end{align*}
This is again an equality between products of nonzero prime ideals, but with one fewer factor on each side.
**Induction.** We induct on $r$. The hypothesis is: uniqueness holds for equalities of products of primes whose left-hand side has at most $r - 1$ factors. The inductive step is what we just did: reduce from $r$ factors to $r - 1$ by matching and cancelling a single factor. Applying the hypothesis to the reduced equation gives $r - 1 = s - 1$ (hence $r = s$) and a bijection of the remaining $r - 1$ primes up to reordering.
**Base case $r = 0$.** The empty product equals $\mathcal{O}_L$. Suppose $\mathcal{O}_L = \mathfrak{q}_1 \cdots \mathfrak{q}_s$ with all $\mathfrak{q}_j$ prime. If $s \geq 1$, then $\mathfrak{q}_1 \cdots \mathfrak{q}_s \subseteq \mathfrak{q}_1 \subsetneq \mathcal{O}_L$ (using that $\mathfrak{q}_1$ is proper), contradicting the equality. Hence $s = 0$ as well, completing the base case.
**Combining.** The induction gives $r = s$ and a permutation $\sigma$ on $\{1, \ldots, r\}$ with $\mathfrak{p}_i = \mathfrak{q}_{\sigma(i)}$ for all $i$. This is uniqueness.
[/guided]
[/step]
[step:Assemble the existence and uniqueness halves]
We have shown:
- (Existence) Every nonzero integral ideal $\mathfrak{a} \unlhd \mathcal{O}_L$ admits a factorization $\mathfrak{a} = \mathfrak{p}_1 \cdots \mathfrak{p}_r$ into nonzero prime ideals (Steps 2–4).
- (Uniqueness) Any two such factorizations have the same length $r$ and the same multiset of prime factors (Steps 5–6).
Combined, this is the theorem: every nonzero $\mathfrak{a} \unlhd \mathcal{O}_L$ factors uniquely (up to reordering, and counted with multiplicity) as a product of prime ideals.
[guided]
Two halves of the theorem:
- **Existence** came from (a) finding a maximal ideal over $\mathfrak{a}$, (b) using invertibility to factor $\mathfrak{a} = \mathfrak{m}\mathfrak{a}_1$ with $\mathfrak{a}_1 \supsetneq \mathfrak{a}$ a larger integral ideal, and (c) iterating: by the Noetherian property, the chain of integral ideals produced must hit $\mathcal{O}_L$ in finitely many steps.
- **Uniqueness** came from $\mathcal{O}_L$ being Dedekind: nonzero primes are maximal, so primes containing other primes must equal them. Combined with [Prime Ideals Divide Products](/theorems/1588) (Euclid's lemma for ideals) and invertibility to cancel, we induct on the number of factors.
Together, these two halves express the most important structural fact about the ring of integers: despite $\mathcal{O}_L$ generally not being a UFD at the level of *elements*, it is always a UFD at the level of *ideals*. This is the foundation of algebraic number theory — it allows us to define ideal norms multiplicatively, set up the exponent vector of a prime factorization, define the class group, and extract arithmetic information (splitting, ramification, etc.) by tracking how rational primes $p\mathbb{Z}$ factor in $\mathcal{O}_L$.
A remark on the interchange of "reordering" and "counted with multiplicity": the factorization $\mathfrak{a} = \mathfrak{p}_1 \cdots \mathfrak{p}_r$ may repeat primes. Collecting like terms gives a representation
\begin{align*}
\mathfrak{a} = \mathfrak{p}_1^{e_1} \cdots \mathfrak{p}_g^{e_g}
\end{align*}
with distinct primes $\mathfrak{p}_1, \ldots, \mathfrak{p}_g$ and positive integers $e_i = v_{\mathfrak{p}_i}(\mathfrak{a})$ (the $\mathfrak{p}_i$-adic valuation of $\mathfrak{a}$). The uniqueness statement then reads: the primes $\mathfrak{p}_i$ and the exponents $e_i$ are uniquely determined by $\mathfrak{a}$ (up to the order in which we list them).
[/guided]
[/step]
Explore Further
Dirichlet's Unit Theorem for Real Quadratic Fields
Algebraic Number Theory
Every Class Has a Small Representative
Algebraic Number Theory
Class Group Measures UFD Property
Algebraic Number Theory
Behaviour of 2 in Quadratic Fields
Algebraic Number Theory
Square-Free Discriminant Criterion
Algebraic Number Theory
Stability Implies Integrality
Algebraic Number Theory
Minkowski's Lemma (Quadratic Case)
Algebraic Number Theory
Factorisation of the Cyclotomic Zeta Function
Algebraic Number Theory