Alex Thomas 12 March 2010 Professor William Stein Math 414 Twelve Steps: The Proofs for the Prime Number Theorem and Prime Number Theorem in Arithmetic Progression by Newman(via Zagier) and Soprounov Respectively In this project I will explain the proof of the Prime Number Theorem(PNT) by D.J. Newman, as described by D. Zagier, and the proof by Ivan Soprounov of prove the Prime Number Theorem in Arithmetic Progression(PNTAP). Once I have explained the asymptotic estimates of the prime counting function, and the prime counting function for primes congruent to some number modulo another, I will test the latter estimate by means of a program I have written in Sage. We will begin with Newman’s proof for the PNT Newman’s proof of the PNT begins with establishing Euler’s product formula. First, let us show the Riemann zeta function. This function was first examined by Euler in a proof of Euclid’s theorem, as well as by Dirichlet, but Riemann was the first to study in-depth as a function of a complex variable1, hence its name. Definition 1: the Riemann zeta function ∞ 1 π(π ) β ∑ π , π ∈ β π π=1 Let us now examine the expanded series. Eq. 1 1 1 1 1 1 π(π ) = ∑ π = 1 + π + π + π + π + β― π 2 3 4 5 ∞ π=1 Now we multiply both sides by the second term. Eq. 2 ∞ 1 1 1 1 1 1 1 1 π(π ) = π ∑ π = π + π + π + π + π + β― π 2 2 π 2 4 6 8 10 π=1 Next we subtract Eq. 2 from Eq, 1. 1 LeVeque, 154, 155 Eq. 3 1 1 1 1 1 1 π(π ) − π π(π ) = (1 − π ) π(π ) = 1 + π + π + π + π + β― 2 2 3 5 7 9 Then let us multiply both sides by the second term again. Eq. 4 1 1 1 1 1 1 1 (1 − π ) π(π ) = π + π + π + π + π + β― π 3 2 3 9 15 21 27 As before, let us subtract Eq. 4 from Eq. 3. Eq. 5 1 1 1 1 1 1 1 (1 − π ) (1 − π ) π(π ) = 1 + π + π + π + π + π + β― 3 2 5 7 11 13 17 We do these same steps to obtain another factor. Eq. 6 1 1 1 1 1 1 1 1 (1 − π ) (1 − π ) (1 − π ) π(π ) = 1 + π + π + π + π + π + β― 5 3 2 7 11 13 17 19 If we continue in this way the right-hand side approaches 1, and this gives us Eq. 7 π(π ) ∏(1 − π−π ) = 1 π One can notice the similarity of this proof to the Sieve of Eratosthenes. Now solving for π(π ), we get the Euler product formula as desired. Result 1: Euler’s product formula −1 π(π ) = (∏(1 − π−π )) π = ∏(1 − π−π )−1 π 1 Next we will show that π(π ) − π −1 is analytic (Zagier uses the word ‘holomorphic’, which means the same in this situation)2 on {π ∈ β: ℜ(π ) > 0}, the right half of the complex plane. We will transform the expression into something that will let us talk of analyticity. We can 1 treat π −1 as the result of an improper integral, and then finesse the summand in the Riemann zeta function underneath the integral. The way this is done becomes obvious if you transform the rightmost side into the middle one. 2 Zagier, 1 Eq. 8 ∞ ∞ π+1 1 1 1 1 1 π(π ) − = ∑ π − ∫ π ππ₯ = ∑ ∫ − π ππ₯ π π −1 π π π₯ 1 π₯ π ∞ π=1 π=1 Now we examine the absolute value of the summed integral, whence we obtain 1 Result 2: π(π ) − π −1 is analytic on {π ∈ β: ℜ(π ) > 0} ∞ ∞ π₯ |π | 1 1 1 π |∫ π − π ππ₯| = |π ∫ ∫ π +1 ππ’ ππ₯| ≤ max | π +1 | = ℜ(π )+1 n≤u≤n+1 π’ π₯ π 1 π 1 π π’ This shows that the summand is less than that of a convergent power series times a constant, |π |, so by the comparison test, it too must be convergent. Now we will show ∑π≤π₯ log(π) = π(π₯), where π(π₯) is big O notation, but first let us officially define this series as a function. Definition 2: π(π₯) π(π₯) β ∑ log(π) π≤π₯ First, we will try and get a handle on how fast π(π₯) changes with respect to π₯. Eq. 9 π 2π 2 = (1 + 1) 2π 2π 2π ) ≥ ( ) ≥ ∏ π = π π(2π)−π(π) π π = ∑( π=0 π<π≤2π This has given us something which we can manipulate by taking the log of both sides. Eq. 10 2π log(2) ≥ π(2π) − π(π) This gives us something with π(π₯) on the left side, and something π(π₯) on the right. Eq. 11 π₯ π(π₯) − π ( ) ≤ πΆπ₯, πΆ > log 2 2 Now we will sum these differences for over increasing powers of 2. Eq. 12 ∞ ∞ π₯ π₯ π₯ ∑ (π ( π ) − π ( π+1 )) ≤ πΆ ∑ π 2 2 2 π=0 π=0 Applying term by term cancellation on the left side, and the normal properties for a geometric series on the right, we obtain Eq. 13 ∞ π₯ π(π₯) ≤ πΆ ∑ π = 2πΆπ₯ 2 π=0 From this we see that Result 3 π(π₯) = π(π₯) Now we will examine Φ(π ). Definition 3: Φ(π ) log(π) Φ(π ) β ∑ ππ π We want to show that the Riemann zeta function has no zeroes for{π ∈ β: ℜ(π ) ≥ 1}, also 1 we will show that Φ(π ) − π −1 is analytic there as well. To examine π(π ) for zeroes, we will look at the logarithmic derivative. Eq. 14 π π log(π(π )) = − log (∏(1 − π−π )) ππ ππ π The rules of logarithms lead us to use the product form of π(π ); these rules will allow us transform the logarithm of a product into a sum of logarithms. Eq. 15 − ζ′ (s) π π = − log (∏(1 − π−π )−1 ) = − ∑ log((1 − π−π )−1 ) = ζ(s) ππ ππ π π −π π log(p) log(π) (1 − π−π )2 −∑ =∑ π −π −1 (1 − π ) π −1 π π This leaves us with a suggestive form (the negative was appended to the logarithmic derivative in order to get us here), which we can manipulate to achieve our intended result. Eq. 16 log(π) log(π) log(π) log(π) log(π) ∑ π =∑ π − + = Φ(π ) + ∑ π −1 π −1 ππ ππ π π (π π − 1) π π π Now, if we establish analyticity for the rightmost part, we will have completed both of our log(π) tasks. So now let us show that the series ∑π ππ (ππ −1) is convergent by the comparison test. Eq. 17 | log(π) log(π) | = ℜ(π ) π − 1) |(π − 1)| π π π (π π Now we must get a handle on |(π π − 1)|, so let us separate off some of the series. Eq. 18 π log(π) log(π) log(π) ∑ π π =∑ π π +∑ π π π (π − 1) π (π − 1) π (π − 1) π π=2 π>π The term on the right of the plus sign is finite, so let us work on the one on the left, but we will consider the value of π first. Eq. 19 πℜ(π ) π > π ⇒ πℜ(π ) > πℜ(π ) , ℜ(π ) > 1, ℜ(π ) > 0 π This will eventually give us a finite number with which to work.3 Eq. 20 ℜ(π ) π 1 πℜ(π ) − ℜ(π ) = πℜ(π ) (1 − ℜ(π ) ) < πℜ(π ) − 1 π π 1 1 = πΎ > ℜ(π ) 1 π −1 πℜ(π ) (1 − ℜ(π ) ) π This gives us something to replace the troublesome |(π π − 1)|. Eq. 21 log(π) log(π) < ℜ(π ) π |(π − 1)| πΎπ2ℜ(π ) π 1 Which is convergent for2ℜ(π ) − 1 > 0, or, ℜ(π ) > 2, as desired. So this, along with Result 2, establishes that the rightmost side is at least meromorphic, that is to say, analytic with a specific set of poles. We will examine Φ(π ) on the boundary of {π ∈ β: ℜ(π ) ≥ 1} for poles. If there are none, we will have succeeded. Let us examine five points, and we will assume they are indeed poles of Φ(π ). Eq. 22 π = 1,1 ± ππΌ, 1 ± 2ππΌ Let the complex ones’ poles be of order π, π respectively (so π, π are non-negative integers). We have that order of the zeroes of a function, are the residues of the logarithmic derivative, e.g. 3 Thanks to Prof. John Sylvester for this method of showing convergence for 1 ℜ(π ) > 2 Eq. 23 π(π§) = π§ , log(π(π§)) = log(π§ π ) = π log(π§) π π π log(π§) = ππ§ π§ π And since the residue is equal to the coefficient of the first negative-power term of the Laurent series expansion of π(π§), we have π, as the residue at π§ = 0, which happens to be the order of the zero of π(π§) at π§ = 0. Because of this, the residue of Φ(π ) at the points above should equal the negative of the order of the zeroes of π(π ). Since Φ(π ) is not under any power, so its pole at π = 1 is a simple one (has an order of 1). Eq. 24 res(Φ(π ), π = 1) = πΦ(1 + π) = 1 res(Φ(π ), π = 1 ± ππΌ) = πΦ(1 + π ± ππΌ) = −π res(Φ(π ), π = 1 ± 2ππΌ) = πΦ(1 + π ± 2ππΌ) = −π πΌ ∈ β, πΌ ≠ 0 Now we will attempt to create a contradiction. Eq. 25 2 4 ∑ ( ) Φ(1 + πππΌ) = Φ(1 − 2ππΌ) + 4Φ(1 − ππΌ) + 6Φ(1) + 4Φ(1 + ππΌ) + Φ(1 + 2ππΌ) 2+π π=−2 Let us see if we can transform this unwieldy right-hand side into something more useful . Eq. 26 log(π) log(π) log(π) log(π) log(π) = ∑ 1+π−2ππΌ + 4 ∑ 1+π−ππΌ + 6 ∑ 1+π + 4 ∑ 1+π+ππΌ + ∑ 1+π+2ππΌ = π π π π π π π π π π log(π) log(π) log(π) log(π) log(π) ∑ 1+π−2ππΌ + 4 1+π−ππΌ + 6 1+π + 4 1+π+ππΌ + 1+π+2ππΌ = π π π π π π 1 1 1 1 1 ∑ log(π) ( 1+π−2ππΌ + 4 1+π−ππΌ + 6 1+π + 4 1+π+ππΌ + 1+π+2ππΌ ) π π π π π π This looks like the expansion of a linear expression raised to the fourth power Eq. 27 log(π) 1 1 1 1 ∑ 1+π ( −2ππΌ + 4 −ππΌ + 6 + 4 ππΌ + 2ππΌ ) = π π π π π ππΌ 4 log(π) ∑ 1+π ((π 2 ) π π π ππΌ 3 ππΌ 2 ππΌ ππΌ 2 ππΌ 3 ππΌ ππΌ 4 + 4 (π 2 ) (π− 2 ) + 6 (π 2 ) (π− 2 ) + 4 (π 2 ) (π− 2 ) + (π− 2 ) ) = 4 4 ππΌ log(π) ππΌ log(π) πΌ ∑ 1+π (π 2 + π− 2 ) = ∑ 1+π (2 cos ) ≥ 0 π π 2 π π Now, multiply the right-hand side of Eq. 25 by π, let π go to zero, and we get Eq. 28 −π − 4π + 6 − 4π + −π = 6 − 8π − 2π ≥ 0 But here we must remember that π is a non-negative integer, so in order for this statement to be true, it must be zero. This means there is no pole there, so we have a contradiction. This, with the Result 2, gives us the desired result. Result 4: π(π ) ≠ 0, ∀π ∈ β s. t. ℜ(π ) ≥ 1 ∞ π(π₯)−π₯ Now we will examine ∫1 π₯ 2 ππ₯ for convergence. First we will try to make the integral that we are concerned with out of something with established properties. Eq. 29 π ∑q≤xi log(q) − ∑q≤xi−1 log(q) log(π) log(π) Φ(π ) = ∑ = lim ∑ = lim ∑ , π ∈]π₯π−1 , π₯π ] π→∞ π→∞ ππ ππ ππ π π π π This gives us something with π(π₯), which is promising. Eq. 30 π ∞ ∑q≤xi log(q) − ∑q≤xi−1 log(q) ππ(π₯) lim ∑ = ∫ π π→∞ π π₯π 1 π We are nearly where we want, let us now change this Stieltjes integral into the more familiar Riemann integral with integration by parts for Stieltjes integrals. Eq. 31 ∞ ∞ ππ(π₯) π(π) 1 ∫ = lim − π(1) − ∫ π(π₯)π ( ) π→∞ π π π₯π π₯π 1 1 π(1) is obviously zero, so let us examine the limit. Eq. 32 ∑ π(π) O(r) p≤r log(p) lim π = lim = lim π = 0 π π→∞ π π→∞ π→∞ π π This is obtained with Result 3. So now we are left with a friendlier Stieltjes integral. Eq. 33 ∞ ∞ ∞ ππ(π₯) 1 π(π₯) ∫ = − ∫ π(π₯)π ( ) = π ∫ ππ₯ π +1 π₯π π₯π 1 1 1 π₯ Now we will apply a change of variable to this in order to get the equation that will let us obtain the desired result. Eq. 34 ∞ ∞ π(π₯) π(π π‘ ) Φ(π ) = π ∫ π +1 ππ₯ = π ∫ ππ‘ π π π‘ 1 π₯ 0 Next we will make some definitions in order to use the Analytic Theorem. Definition 3 π(π π‘ ) − π π‘ π(π‘) β ππ‘ ∞ π(π§) β ∫ π(π‘)π −π§π‘ ππ‘ , ℜ(π§) > 0 0 Now we will transform π(π§) into something from which we can determine whether it is analytic on ℜ(π§) > 0. Eq. 35 ∞ ∞ ∞ π(π π‘ ) − π π‘ −π§π‘ π(π π‘ ) − π π‘ π(π§) = ∫ π(π‘)π −π§π‘ ππ‘ = ∫ π ππ‘ = ∫ ππ‘ = ππ‘ π π‘(π§+1) 0 0 0 ∞ ∞ π(π π‘ ) ππ‘ Φ(π§ + 1) 1 ∫ π‘(π§+1) ππ‘ − ∫ π‘(π§+1) ππ‘ = − π§+1 π§ 0 π 0 π This shows that π(π§) is analytic by Result 3, and by Result 2 we have that π(π‘) is bounded, and by definition it resembles a step function and so is continuous almost everywhere. So ∞ the Analytic Theorem provides us that ∫0 π(π‘)ππ‘ converges. Analytic Theorem: Let π(π‘), (π‘ ≥ 0) be a bounded and locally integrable function and ∞ suppose that the function (π§) = ∫0 π(π‘)π −π§π‘ ππ‘ , ℜ(π§) > 0 extends ∞ holomorphically to ℜ(π§) ≥ 0. Then ∫0 π(π‘)ππ‘ exists (and equals π(0)).4 Zagier goes onto show the final step here, and then proves the Analytic Theorem; we will instead not prove the Analytic Theorem as it strays too far afield into complex analysis for the purposes of this project. So now we will apply a change of variable to π(π‘) to get the integral in which we were first interested. Result 5: ππ₯ π₯ = ππ‘, = ππ‘ π₯ ∞ ∞ ∞ π(π π‘ ) − π π‘ π(π₯) − π₯ ∫ π(π‘)ππ‘ = ∫ ππ‘ = ∫ ππ₯ convergent ππ‘ π₯2 0 0 1 Now that we have established these five results, we can go on to finish the PNT by showing π(π₯)~π₯. First we will assume that there is some π > 1 such that π(π₯) ≥ ππ₯, for an arbitrarily large π₯, from this we would have Eq. 36 4 Zagier, 4 ππ₯ ∫ π₯ π−1 ππ₯ π(π₯) − π‘ ππ₯ − π‘ ππ₯ − π‘π∗ (π‘π+1 − π‘π ) ππ‘ ≤ ∫ ππ‘ = lim ∑ π→∞ π‘2 π‘2 π‘π∗ 2 π₯ π=0 π‘π∗ = π∗π π₯, π‘π = ππ π₯, π‘π+1 = ππ+1 π₯, 1 ≤ π∗π , ππ , ππ+1 ≤ π π−1 lim ∑ π→∞ π=0 ππ₯ − π‘π∗ π‘π∗ 2 π−1 (π‘π+1 − π‘π ) = lim ∑ π→∞ π−1 π − π∗π lim ∑ ∗ 2 (ππ+1 π→∞ ππ π=0 ππ₯ − π∗π π₯ π∗π 2 π₯ 2 π=0 π − ππ ) = ∫ 1 (ππ+1 π₯ − ππ π₯) = π−π‘ ππ‘ > 0 π‘2 But this presents a problem, if any interval with bounds being some integer to π times that integer is equal to the integral from 1 to π, then we have Eq. 37 π π ∞ ππ+1 π π π(π₯) − π₯ π−π‘ π−π‘ π−π‘ ∫ ππ₯ = lim ∑ ∫ ππ‘ = lim ∑ ∫ ππ‘ = lim π ∫ ππ‘ → ∞ π→∞ π→∞ π→∞ π₯2 π‘2 π‘2 π‘2 1 ππ 1 1 π=0 π=0 This contradicts Result 5. By an equivalent argument, we can show that if instead we have π < 1 such that π(π₯) ≤ ππ₯, we run into the same contradiction (except this time with −∞). Therefore, we get our final result . Result 6: π(π₯)~π₯ Now all that is left is to relate our findings to the prime counting function π(π₯). Eq. 38 π(π₯) = ∑ log(π) ≤ ∑ log(π₯) = π(π₯) log(π₯) π≤π₯ π(π₯) = ∑ log(π) ≥ π≤π₯ π≤π₯ ∑ π₯ 1−π ≤π≤π₯ log(π) ≥ ∑ (1 − π) log(π₯) = π₯ 1−π ≤π≤π₯ (1 − π) log(π₯) (π(π₯) + π(π₯1−π )) → π(π₯) log(π₯) , as Ο΅ → 0 So we have the long sought after result. PNT π(π₯) log(π₯) ~π₯ x π(π₯)~ log(π₯) And so, we have established the PNT by Newman’s Proof. Soprounov’s proof follows in almost the exact same way, except for a few differences. Now we will explain Soprounov’s proof of the PNTAP. First though, we must define two functions: the Dirichlet character, and the Dirichlet L-series. Defintion 4: Dirichlet Characters5 ππ mod π : β€ → β ππ (π) = π§ ππ (π)ππ (π) = ππ (ππ) π ≡ π (π) ⇒ ππ (π) = ππ (π) 0 if gcd(π, π) > 1 ππ (π) mod π β { 2πππ } , π ∈ β€π(π) , π ∈ β€ π π(π) if gcd(π, π) = 1 ππ (1) = 1 π0 (π) = π0 = 1 principle character An important thing to note from the definition is that |π| = 1 or 0 regardless of the integers used in its construction. Now that we have this, we will define the Dirichlet L-series. Definition 5: Dirichlet L-series ∞ ππ (π) πΏ(π , ππ ) β ∑ ππ π=1 Dirichlet used these two functions along with the Riemann zeta function to show that the number of primes in an arithmetic progression is infinite.6 We must now begin our work on the PNTAP. First we will establish Euler’s product formula for the Dirichlet L-series. As before, let us examine the expanded series Eq. 39 ∞ ππ (π) ππ (π2 ) ππ (π3 ) ππ (π4 ) ππ (π5 ) πΏ(π , ππ ) = ∑ = 1+ + + + +β― π π π2 π π3 π π4 π π5 π π=1 ππ β€ π, ππ mod π Now we will attempt the same step as before, we will find the first prime in the list and obtain Eq. 40 ∞ ππ (π) ππ (π) ππ (π) ) πΏ(π , π = ∑ = π ππ ππ ππ π=1 ππ (π) ππ (π)ππ (π2 ) ππ (π3 )ππ (π) ππ (π4 )ππ (π) ππ (π5 )ππ (π) + + + + +β―= ππ π π π2 π π π π3 π π π π4 π π π π5 π ππ (π) ππ (ππ2 ) ππ (ππ3 ) ππ (ππ4 ) ππ (ππ5 ) + π π + π π + π π + π π +β― ππ π π2 π π3 π π4 π π5 Now subtracting Eq. 40 from Eq. 39 5 6 LeVeque, 159 LeVeque, 155 Eq. 41 πΏ(π , ππ ) − ππ (π) ππ (π) πΏ(π , ππ ) = (1 − ) πΏ(π , ππ ) π π ππ This removes all the multiples of π from the right-hand side, we would then pick another prime and repeat, and in this way we will sieve out all the primes and solve for πΏ(π , ππ ), and obtain Result 7a: πΏ(π , ππ ) = ∏(1 − ππ (π)π−π )−1 π Furthermore, in the case of ππ = π0 Result 7b: πΏ(π , π0 ) = ∏(1 − π−π )−1 = ∏(1 − π−π ) ∏(1 − π−π )−1 = ∏(1 − π−π ) π(π ) πβ€π π|π π Now we will show that πΏ(π , ππ ), and πΏ(π , π0 ) − π(π) 1 π π −1 π|π is analytic on {π ∈ β: ℜ(π ) > 0}. Let Soprounov takes a partial sum from the Dirichlet L-series and changes into the following. I was unable to figure out how he produced this change, so I am forced to take on faith that it is true. Eq. 42 π₯ π₯ ππ (π) π΄(π₯) π΄(π‘) ∑ = + π ∫ ππ‘ π π π +1 π π₯ 1 π‘ π=1 Definition 6: π₯ π΄(π₯) β ∑ ππ (π) π=1 If ππ (π) is not principal then π΄(π₯) is bounded by a finite number of roots of unity, as the sum over the mth roots of unity hits zero every π(π) times. So we will let π₯ → ∞ to obtain Eq. 43 ∞ ∞ π΄(π‘) π΄(π‘) πΏ(π , ππ ) = π ∫ π +1 ππ‘ = π ∫ π +1 ππ‘ 1 π‘ 1 π‘ This is convergent, and therefore analytic for ℜ(π ) > 0. For the case of ππ (π) being principal we can look at Result 7b, or even the definition of πΏ(π , ππ ), and see that it is meromorphic, with only a simple pole at π = 1 with residue being Eq. 44 π−1 π(π) π(π) ∏(1 − π−1 ) = ∏ ( ) = ∏( )= π π π π|π π|π π|π This gives us all the information needed to say Result 8: π(π) 1 πΏ(π , ππ ), πΏ(π , π0 ) − are analytic on {π ∈ β: ℜ(π ) > 0} π π −1 Now we will show that ππ (π₯) = π(π₯), but first we must define it Definiton 7: ππ (π₯) β π(π) ∑ log(π) π≤π₯ π≡π (π) This will be easy enough to show. Result 9: ππ (π₯) ≤ π(π)π(π₯) = π(π₯) ⇒ ππ (π₯) = π(π₯) Now we will examine Definition 8: ππ (π) log π π(π , ππ ) β ∑ ππ π Φπ (π ) β ∑ π(π , ππ ) ππ Φπ,π (π ) β ∑ Μ Μ Μ Μ Μ Μ Μ Μ ππ (π)π(π , ππ ) , Μ Μ Μ Μ Μ Μ Μ Μ ππ (π) conjugate of ππ (π) ππ We want to show that the Dirichlet L-series has no zeroes for {π ∈ β: ℜ(π ) ≥ 1} for any ππ , 1 also we will show that Φπ (π ) − π −1 is analytic there as well. In order to guarantee our desired result for any π, we will look at the a new function. Definition 9: β(π ) β ∏ πΏ(π , ππ ) π Soprounov takes as given, as will we, that πΏ(1, ππ ) ≠ 0 provided that ππ is not principal. So let us now again to the logarithmic derivative of β(π ). Eq. 45 πΏ′(π , ππ ) ∏π πΏ(π , ππ ) π ∑ ( ) π πΏ(π , ππ ) β ′ (π ) ππ ∏π πΏ(π , ππ ) πΏ′(π , ππ ) = = = ∏π πΏ(π , ππ ) ∏π πΏ(π , ππ ) β(π ) πΏ(π , ππ ) Therefore, we need only examine the logarithmic derivative of the Dirichlet L-series. Eq. 46 π π log(πΏ(π , ππ )) = − log (∏(1 − ππ (π)π−π )−1 ) ππ ππ π We will use the rules of logarithms as before. Eq. 47 − πΏ′(π , ππ ) π π = − log (∏(1 − ππ (π)π−π )−1 ) = − ∑ log((1 − ππ (π)π−π )−1 ) = πΏ(π , ππ ) ππ ππ π π ππ (π)π−π log(p) ππ (π) log(π) (1 − ππ (π)π−π )2 −∑ =∑ π −π −1 (1 − ππ (π)π ) π − ππ (π) π π We now use the exact same methods as in the proof for the PNT. Eq. 48 ππ (π) log(π) ππ (π) log(π) ππ (π) log(π) ππ (π) log(π) ∑ π =∑ π − + = π − ππ (π) π − ππ (π) ππ ππ π π Φm (π ) + ∑ π ππ2 (π) log(π) π π (π π − ππ (π)) The analyticity for the term on the right is essentially the same as before, so like both authors, we will take it as given. Combined with Result 8, this establishes that the rightmost side is at least meromorphic, that is to say, analytic with a specific set of poles. The rest of the proof of this claim follows indentically to the proof for Result 4. Result 10: π(π ) ≠ 0, ∀π ∈ β s. t. ℜ(π ) ≥ 1 Result 8 and Result 10 give 1 Φπ,π (π ) − π −1 ∞ ππ (π₯)−π₯ Now we will show that ∫1 π₯2 Result 11: as analytic on {π ∈ β: ℜ(π ) ≥ 1}. ππ₯ is convergent. Eq. 49 ππ Μ Μ Μ Μ Μ Μ Μ Μ Φπ,π (π ) = ∑ Μ Μ Μ Μ Μ Μ Μ Μ ππ (π)π(π , ππ ) = ∑ (π π (π) ∑ ππ ππ Μ Μ Μ Μ Μ Μ Μ Μ ∑ (π π (π) ∑ ππ π π (π) log π )= ππ ππ (π) log π ) ππ The Μ Μ Μ Μ Μ Μ Μ Μ ππ (π) can also be written as ππ (π−1 mod π), by the multiplicative property of ππ , so it works like a filter with ππ (π) leaving us with only the primes congruent to π modulo m. Eq. 50 ∑ Μ Μ Μ Μ Μ Μ Μ Μ ππ (π)ππ (π) = ππ ∑ 1 = π(π) π−1 π≡1(π) So now we are left with turning Φπ,π (π ) into something familiar. Eq. 51 log π log π ∑ π(π) π = ∑ π(π) π π π −1 π π≡π(π) π≡1(π) This is reminiscent of Φ(π ) from the proof of the PNT, and indeed it can be transformed into an integral in the same manner. So now we have, with a familiar change of variable Eq. 52 ∞ π (π₯) ∞ π (π π‘ ) π π Φπ,π (π ) = π ∫ ππ₯ = π ∫ ππ₯ π +1 π₯ π π π‘ 1 1 From here we proceed in the exact same way as in the proof for the PNT, using the Analytic Theorem we get that indeed Result 12: ∞ π (π₯) − π₯ π ∫ ππ₯ convergent π₯2 1 From this point on, the Soprounov proof says nothing new from the Newman proof, so we will cut to the chase and get to the finale. PNTAP π(π₯, π) = π₯ π(π) log π₯ Now I explain the program by which I will test these results. def PNTAP_test1(x,q,a): assert gcd(q,a) == 1 finish_q = int(Mod(x,q)) tries = (x-finish_q)/q + 1 hits = 0 for k in range(tries) : y = q*k+a if y > x: break if is_prime(y): hits += 1 estimate = N(x/(euler_phi(q)*log(x))) abs_error = abs(hits-estimate) rel_error = abs_error/hits return [hits,estimate.n(digits=5), \ abs_error.n(digits=5), \ rel_error.n(digits=5)] Step 1: Make sure that π and π are coprime The range of numbers to be tested will be partitioned into testing grounds by the arithemetic progression, so we will see how much is cropped off by the cap of the range. Step 2: Get the distance between the beginning of the final interval and the cap Step 3: Calculate the number of prime tests that will be conducted Step 4: Get the value, y of the arithmetic progression for the current test Step 5: If we have gone too far skip to Step 8 Step 6: If y is prime add one to the hit count Step 7: Repeat Steps 4-6 until all the tests are done Step 8: Calculate the estimate according to the PNTAP Step 9: Calculate the absolute error Step 10: Calculate the relative error Return: Number of hits, estimate, absolute error, relative error def PNTAP_test2(x,q): phi_q = euler_phi(q) cong_classes = q.coprime_integers(q) hit_data = [] estimate = N(x/(phi_q*log(x))) abs_error_data = [] rel_error_data = [] for k in range(phi_q): a = cong_classes[k] data = PNTAP_test1(x,q,a) hit_data += [data[0]] abs_error_data += [data[2]] rel_error_data += [data[3]] hit_mean = N(sum(hit_data)/phi_q) abs_error_mean = N(sum(abs_error_data)/phi_q) rel_error_mean = N(sum(rel_error_data)/phi_q) hit_stddev = 0 abs_error_stddev = 0 rel_error_stddev = 0 for k in range(phi_q): hit_stddev += N(sqrt((phi_q-1)^-1*(hit_data[k]-hit_mean)^2)) abs_error_stddev += N(sqrt((phi_q-1)^-1*\ (abs_error_data[k]-abs_error_mean)^2)) rel_error_stddev += N(sqrt((phi_q-1)^-1*\ (rel_error_data[k]-rel_error_mean)^2)) return [[hit_mean.n(digits=5),hit_stddev.n(digits=5)], \ [estimate.n(digits=5)], \ [abs_error_mean.n(digits=5), \ abs_error_stddev.n(digits=5)], \ [rel_error_mean.n(digits=5), \ rel_error_stddev.n(digits=5)]] Step 1: Calculate the necessary values, π(π), the coprime integers, and the estimate Step 2: Pick a congruency class Step 3: Obtain data on the given arithmetic progression for all the congruency classes Step 4: Distribute the data among the hit data, absolute errors, and relative errors Step 5: Calculate the mean for the hit data, absolute errors, and relative errors Step 6: Calculate the standard deviation for the hit data, absolute errors, and relative errors Return: hit mean, hit standard deviation, absolute error mean, absolute error standard deviation, relative error mean, and relative error standard deviation First, we will test the estimate with a particular congruency class (PNTAP_test1). I will use the following arithmetic progressions to explore how far out we need to go to get close results. TEST 1 4x+1, x=[103, 105, 107] [hits, estimate, mean, absolute error, relative error] [80, 72.382, 7.6176, 0.095220] x= 103 [4783, 4342.9, 440.06, 0.092004] x= 105 [332180, 310210., 21970., 0.066138] x= 107 TEST 2 27x+8, cap=[103, 105, 107, 109] [hits, estimate, mean, absolute error, relative error] [8, 8.0425, 0.042490, 0.0053113] x= 103 [543, 482.55, 60.451, 0.11133] x= 105 [36912, 34468., 2444.2, 0.066216] x= 107 [2824735, 2.6808e6, 143900., 0.050945] x= 109 TEST 3 90x+37, x=[103, 105, 107, 109] [hits, estimate, mean, absolute error, relative error] [8, 6.0319, 1.9681, 0.24602] x= 103 [405, 361.91, 43.088, 0.10639] x= 105 [27734,25851, 1883.1, 0.067900] x= 107 [2119211, 2.0106e6, 108590., 0.051240] x= 109 TEST 4 105x+16, x=[103, 105, 107, 109] [hits, estimate, mean, absolute error, relative error] [3, 3.0159, 0.015934, 0.0053113] x= 103 [405, 361.91, 43.088, 0.10639] x= 105 [13835,12925., 909.57, 0.065744] x= 107 [1059463, 1.0053e6, 54152., 0.051112] x= 109 We see that, as expected, the relative error decreases as π₯ grows. 27x+8 is odd in that for x = 103 it is unusually accurate, and unlike 105x+16, it can’t be explained as it being a very small number. Now we will try the second fact obtained from the PNTAP (PNTAP_test2) with two arithmetic progressions. TEST 5 m = 27, x=[103, 105, 107] [[hit mean,hit stddev],[estimate], [abs error mean,abs error stddev], [rel error mean,rel error stddev]] x=103 [[9.2778, 5.0932], [8.0425], [1.4858, 3.9994], [0.14958, 0.34342]] x=105 [[532.83, 22.798], [482.55], [50.284, 22.798], [0.094220, 0.039111]] x=107 [[36921., 170.26], [34468.], [2453.2, 170.26], [0.066443, 0.0043041]] TEST 6 m = 42, x=[103, 105, 107] [[hit mean,hit stddev],[estimate], [abs error mean,abs error stddev], [rel error mean,rel error stddev]] x=103 [[13.750, 4.0704], [12.064], [1.7181, 3.9359], [0.11735, 0.25734]] x=105 [[799.08, 24.473], [723.82], [75.259, 24.473], [0.094098, 0.027691]] x=107 [[55381., 93.870], [51702.], [3679.6, 93.874], [0.066441, 0.0015834]] The results for this test are less satisfactory, but still we see the means behave like we saw the specific congruency classes from tests 1 through 4. This result is subtly amazing. According to the PNTAP, the number of primes congruent to a number modulo another depends only on the modulus, which means that the primes are evenly distributed among the congruency classes of the multiplicative group of the modulus. This hints at a structure to what otherwise appears to be a randomly distributed set of numbers, the primes. Bibliography LeVeque, William J. Fundamentals of Number Theory. New York: Dover, 1996. Soprounov, Ivan. A Short Proof of the Prime Number Theorem for Arithmetic Progressions. [http://www.math.umass.edu/~isoprou/pdf/primes.pdf]. 3 March 2010 Zagier, D. Newman’s Short Proof of the Prime Number Theorem. [http://mathdl.maa.org/images/upload_library/22/Chauvenet/Zagier.pdf]. 4 March 2010