| べき乗演算子^は四則演算より優先度が高いものと解釈・記述します。
自然数の素数pが4または27の因数である場合、つまりp = 2またはp = 3の場合は 題意の(x, y)の組数が少ないので手計算で数えてみてください。 以下、(p, 4) = (p, 27) = 1の場合、つまりp > 3の場合の解説です。
先ず、p ≠ 2の場合の以下の平方剰余に関する性質を前提とします。
(1)法pの0以外の剰余類の内、半数の(p-1)/2個が平方剰余であり、 残りの半数の(p-1)/2個が平方非剰余である。
(2)法pの平方剰余を{a[1], a[2], ・・・, a[(p-1)/2]}とし、 平方非剰余を{b[1], b[2], ・・・, b[(p-1)/2]}とする。 平方剰余の1つをu, 平方非剰余の1つをvとする。 {u*a[1], u*a[2], ・・・, u*a[(p-1)/2]}は全て平方剰余となり、 {u*b[1], u*b[2], ・・・, u*b[(p-1)/2]}は全ての平方非剰余となり、 {v*a[1], v*a[2], ・・・, v*a[(p-1)/2]}は全ての平方非剰余となり、 {v*b[1], v*b[2], ・・・, v*b[(p-1)/2]}は全ての平方剰余となる。
(x, y)の組はp^2通りあるので、そこから4x^3-27y^2がpの倍数となるものを除いた組数を求めます。
4x^3-27y^2 ≡ 0 (mod p)とすると、x, yの一方が法pで0に合同であれば他方も0に合同であることが 必要なので(x, y) = (0, 0)という自明な解が1つあることになります。
x, yの両方共に法pで0に合同でない場合、 4x^3-27y^2 ≡ 0 (mod p) ⇒ x/3 ≡ (3y/(2x))^2 (mod p)ですから、 x/3は平方剰余である必要があり、x/3を1からp-1まで動かしたとき 性質(1)より半数の(p-1)/2個のx/3の値でx/3 ≡ a^2 (mod p)は解を持ちます。
x/3 ≡ a^2 (mod p) ⇒ ±a ≡ 3y/(2x) (mod p) ⇒ ±2ax/3 ≡ y (mod p) と、平方剰余であるx/3の1個の値に対してyの値は2個存在します。 よって、(x, y) ≠ (0, 0)以外の解の個数は{(p-1)/2}*2 = p-1個となります。
以上から4x^3-27y^2がpで割り切れない(x, y)の組数はp^2-{1+(p-1)} = p(p-1)個となります。
|