順番 10 / 64

中学校

4の時計と平方数

正方形になる数は、4の時計で0か1に座ります。2には決して座りません。

まず、身近な例で

0、1、2、3を二乗して4で割ると、余りは0、1、0、1です。規則が見えてきますね。ずっと続く理由は、証明で確かめます。

ちいさな確認:考えてみよう

上の具体例を見ながら考えよう。何度やり直しても大丈夫。

5²を4で割った余りは?

答えと考え方を読む

1。 5²=25=4×6+1です。一例を計算することと、平方すべてについての主張を証明することは別です。

3段階で考えよう

  1. 平方数を4の時計に載せます:0 ^ 2 = 0、1 ^ 2 = 1、2 ^ 2 = 4は0に着地、3 ^ 2 = 9は1に着地。整数の平方は必ず0か1に座り、2の席は空いたままです。
  2. 定理sq_ne_two_fin_zmod_fourは、Leanの時計型ZMod 4の上でまさにそれを言い、証明はfin_casesとdecide:全位置を訪れて四つとも確かめる——賢い技ではなく、国勢調査です。
  3. 整数版Int.sq_ne_two_mod_fourは、このことを余りつきのふつうの平方数へ移します。この小さな国勢調査は学校サイズの望遠鏡で、指数4の場合に三角形のどちらの脚が偶数かを教えます。

小さな例で確かめる

自分でも確かめよう。5 ^ 2 = 25 = 6 × 4 + 1の余りは1、6 ^ 2 = 36 = 9 × 4の余りは0。整数の平方を4で割った余りは、2にはなりません。

Leanの定義・原文の抜粋

Mathlib · db584cd · PythagoreanTriples.lean

theorem sq_ne_two_fin_zmod_four (z : ZMod 4) : z * z ≠ 2 := by  change Fin 4 at z  fin_cases z <;> decide theorem Int.sq_ne_two_mod_four (z : ℤ) : z * z % 4 ≠ 2 := by  suffices ¬z * z % (4 : ℕ) = 2 % (4 : ℕ) by exact this  rw [← ZMod.intCast_eq_intCast_iff']  simpa using sq_ne_two_fin_zmod_four _

このLeanの読み方

4の時計では、偶数は2 · 2 = 4なので平方すると0になり、奇数は常に偶数の2倍より1大きいので(奇数 × 奇数は4の倍数プラス1)、平方すると1になります。最初の証明は有限の時計を総当たりで確かめる、学校の表が作るのと同じ国勢調査です。二番目の証明は、時計型を一度通ることで(rw [← ZMod.intCast_eq_intCast_iff'])、この事実を整数の余りの言葉へ持ち上げます。ファイルは、一行の事実のために小さな場合分けの代償を払うことがあります。

この言葉を使う章

7. ベテランたちの事件簿
わからない・道に迷った

ミカのたすけ舟

4の時計と平方数

今は、一つだけ

まず「3段階で考えよう」を上から読みます。Leanの原文は、その後でも大丈夫です。

言葉をほどこう

正方形になる数は、4の時計で0か1に座ります。2には決して座りません。

このページの「この言葉の前に」に、先に知ると読みやすい言葉があります。

小さな手がかり

自分でも確かめよう。5 ^ 2 = 25 = 6 × 4 + 1の余りは1、6 ^ 2 = 36 = 9 × 4の余りは0。整数の平方を4で割った余りは、2にはなりません。

閉じれば、読んでいた場所に戻れます。このページに合わせて用意したヒントです。

最初の小さな物語から読む →