Section 13.5 All the Squares Fit to be Summed
There is one loose end. What are all the numbers we can represent as a sum of squares? For instance, why are some composite numbers of the formLemma 13.5.1.
If
Proof.
Each of those primes is representable, so we can use Fact 13.1.9 to write all intermediate products as a sum of squares. Hence all such products are representable.
Example 13.5.2.
Consider this:
Lemma 13.5.3.
If the powers of prime factors of
Proof.
First, \(p^2\) (even if \(p\) is not prime) is trivially always representable, since \(p^2=p^2+0^2\text{.}\) Now, rather than using Fact 13.1.9, let \(P\) be the product of all prime factors of the form \(4k+3\text{,}\) which is necessarily a perfect square \(P=Q^2\text{,}\) given that all the powers are even. We can simply multiply this by \(N/Q^2=a^2+b^2\text{,}\) which is possible by Lemma 13.5.1 since \(Q^2\) removes all primes of the form \(4k+3\) in the prime factorization. This yields \((aQ)^2+(bQ)^2\text{.}\)
Example 13.5.4.
Consider this:
Theorem 13.5.5.
Proof.
From 13.5.1 and 13.5.3, the only case left to consider if \(N\) has a prime of the form \(p=4k+3\text{,}\) but to an odd power. This seemed to be the bottleneck in our exploration.
By way of contradiction, suppose that it is possible to write
First, divide this equation by any factors of \(p\) common to \(N\text{,}\) \(a\text{,}\) and \(b\) to get
The power of \(p\) we divided by (so that \(N=Mp^\ell\)) must be an even power, since each term on the right-hand side is a perfect square and can only contribute even powers of primes by the Fundamental Theorem of Arithmetic.
Since \(N\) had an odd power of \(p\text{,}\) we know \(M\) still has an odd power of \(p\) dividing it, yet \(p\nmid c,d\text{.}\)
Take everything modulo \(p\) to get the congruence
Since \(p \nmid c\text{,}\) we can multiply this congruence by \(\left(c^{-1}\right)^2\) to get
This is a contradiction, as by Fact 13.3.2 there is no square root of \(-1\) modulo \(p\) for \(p=4k+3\text{,}\) finishing the proof!
Example 13.5.6.
This theorem fully explains why
xxxxxxxxxx
n=20
print(factor(n))
print(two_squares(n))