問題
5m^2-6mn-7n^2が32で割り切れる必要十分条件を求めて下さい。
回答
与式=4m^2+m^2ー6mn-8n^2+n^2
=(m-n)^2-4mn+4m^2-8n^2
=(m-n)^2+4(m^2-mn-2n^2)
=(m-n)^2+4(m+n)(m-2n)
ここで、m-nを8の倍数,mを2の倍数とすると、nも2の倍数となり、m=2p,n=2q(p,qは整数)と置け、m-n=2p-2q=8の倍数である。
よって、p-qは4の倍数より偶数。ところで、p,qは整数よりp+qとp-qの偶奇は一致している。(証明は簡単で省略。)
よって、p+qも偶数である。よって、2p+2q=4の倍数。よって、m+n=4の倍数である。
ここで、与式=(m-n)^2+4(m+n)(m-2n)を考えると、64の倍数+4×4の倍数×2の倍数=64の倍数+32の倍数=32の倍数
よって、与式は32で割り切れる。つまり、条件は、mとnの差が8の倍数でm,nが偶数である。
しかし、これは十分条件ではないのだろうか。因みに、前回の十分条件「m=nかつm,nが偶数」はこの式をm=nとしてm,nを偶数とすれば求められる。
そこで、与式をm-nで割ると、
与式=(m-n)(5m-n)-8n^2
=(m-n){(m-n)+4m}-8n^2
m-nを4の倍数,m,nを偶数としても成り立たず、m-nを8の倍数にすると成り立つが、32で割り切れる必要十分条件と言えるのだろうか。そこで、pythonで計算してみた。
L = [ ]
for m in range(1,20):
for n in range(1,20):
if (5*m**2 - 6*m*n - 7*n**2) % 32 == 0:
L.append((m,n))
print(L)
結果:[(2, 2), (2, 10), (2, 18), (4, 4), (4, 12), (6, 6), (6, 14), (8, 8), (8, 16), (10, 2), (10, 10), (10, 18), (12, 4), (12, 12), (14, 6), (14, 14), (16, 8), (16, 16), (18, 2), (18, 10), (18, 18)]
ちょっと求めた所、「mとnの差が8の倍数でm,nが偶数」となっているので大丈夫だろう。(差が4の倍数の(2,6)などは入っていない。)
念のため、数学で解くとは言っていない。全然違っていたら赤っ恥ですね。笑
おまけ: