第一个证明该定理的人是欧几里德。第一个详细而正确的证明是在卡尔-弗里德里希-高斯的《算术学论》中。
有些人可能认为,该定理在任何地方都是真的。然而,该定理在更一般的数系中并不成立,比如代数整数。这一点最早是由恩斯特-库默在1843年提到的,在他关于费马最后定理的工作中。关于这一点的更多信息:请阅读代数数论。
证明包括两部分:首先,我们表明每个数字都可以写成素数的乘积;其次,我们表明,如果我们第二次将一个数字写成素数的乘积,那么两个素数列表一定是相同的。
证明的第一部分
我们表明,如果不是每个大于1的数都可以写成素数的乘积,那么我们最终会陷入某种不可能。因此,之后我们得出结论,每个数字都可以写成素数的乘积,这一定是真的。
那么,现在看看当有人说他/她知道一个大于1的正整数不能被写成素数的乘积时会发生什么。在这种情况下,我们要求他/她提到所有大于1的、不能被写成素数乘积的数字。这些数字中必须有一个是最小的:让我们称之为n。此外,它不可能是一个素数,因为素数是一个单一素数的 "乘积":它本身。所以它必须是一个数字的乘积。因此
n = ab
其中a和b都是正整数,当然比n小。但是:n是不能写成素数乘积的最小的数。所以一定可以把a和b写成素数的乘积,因为它们都比n小。
n = ab
也可以写成素数的乘积。这是不可能的,因为我们说过n不能被写成素数的乘积。
我们现在已经证明了如果定理的第一部分不成立的话,就会存在不可能性。这样,我们现在已经证明了定理的第一部分。
证明的第二部分
现在我们要证明,只有一种方法可以把大于1的正数写成素数的乘积。
为了做到这一点,我们使用以下定理:如果一个素数p除以一个积ab,那么它就除以a或除以b(欧几里德定理)。首先我们现在证明这个定理。那么,假设p不除以a,那么p和a是共素数,我们有Bezout的特性,即一定有整数x和y,使得
px + ay = 1。
将所有的东西与b相乘,得到
pbx + aby = b。
请记住,ab可以被p整除。所以现在,在左边我们有两个项可以被p整除。
现在我们要证明,我们只能用一种方式把大于1的整数写成素数的乘积。取两个质数A和B的乘积,其结果相同。所以我们知道这两个乘积的结果是A=B。从第一个乘积A中取任何一个素数p,它除以A,所以它也除以B。利用我们刚刚证明的几次定理,我们可以看到p必须至少除以B的一个因子b。但是我们知道p也是素数,所以p一定等于b。所以现在我们用p除以A,同时用p除以B,得到的结果是A*=B*。我们又可以从第一个产品A*中抽取一个素数p,然后发现它等于产品B*中的某个数字。这样继续下去,最后我们看到,两个产品的质因数一定是完全相同的。这证明了我们只能用一种唯一的方式将一个正整数写成素数的乘积。