ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j...

39
1 魔方陣 n 2 n × n n 次方陣 :2 :3 0 から n 2 1 n 一つ一つ れ、 しい き、こ n n 次魔方陣 2 いこ にわかる。 3 ある。 0 4 8 7 2 3 5 6 1 8 1 3 4 6 2 0 5 7 3 8 1 2 4 6 7 0 5 3 れるが、4 るこ めて しい。ここ った かつ する する。 2 ラテン方陣 0 から n 1 n 一つ一つ れ、 0 から n 1 くあり、 0 から n 1 くある き、こ n n 次ラテン方陣 n ラテン ようにつくるこ きる。 0 から るこ にする。第 0 0, 1,...,n 1 、第 1 0 右に一つずつ移 させ、 n 1 に移 させる。第 2 1 に対して う。こ すこ により n ラテン る。n =2, 3, 4, 5 おり ある。 0 1 1 0 0 1 2 2 0 1 1 2 0 0 1 2 3 3 0 1 2 2 3 0 1 1 2 3 0 0 1 2 3 4 4 0 1 2 3 3 4 0 1 2 2 3 4 0 1 1 2 3 4 0 に一つずつ移 させるこ によって n ラテン る。n = 1

Upload: others

Post on 04-May-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

1 魔方陣n2個の正方形を n× nの形に正方形に並べたものを n次方陣と呼ぶ。

: 2次方陣 : 3次方陣

0から n2 − 1までの整数をもれなく重複なく n次方陣の一つ一つの正方形に入れ、どの横の行の和もどの縦の列の和も等しいとき、このn次方陣をn次魔方陣と呼ぶ。2次魔方陣が存在しないことは簡単にわかる。以下は 3次魔方陣の例である。

0 4 8

7 2 3

5 6 1

8 1 3

4 6 2

0 5 7

3 8 1

2 4 6

7 0 5

3次魔方陣は試行錯誤でも作れるが、4次以上の魔方陣を試行錯誤で作ることは極めて難しい。ここでは一次関数を使った簡単かつ系統的な魔方陣を作成する方法を解説する。

2 ラテン方陣0から n− 1までの整数を n次方陣の一つ一つの正方形に入れ、どの横の行にも

0から n− 1までの整数がもれなく重複なくあり、どの縦の列にも 0から n− 1までの整数がもれなく重複なくあるとき、この n次方陣を n次ラテン方陣と呼ぶ。n次ラテン方陣を次のようにつくることができる。行や列の数え方は 0から始めることにする。第 0行目に 0, 1, . . . , n− 1を並べ、第 1行目では第 0行目の数字を右に一つずつ移動させ、最後の n− 1を最初に移動させる。第 2行目では第 1行目に対して同様の操作を行う。この操作を繰り返すことにより n次ラテン方陣を得る。n = 2, 3, 4, 5の場合は以下のとおりである。

0 1

1 0

0 1 2

2 0 1

1 2 0

0 1 2 3

3 0 1 2

2 3 0 1

1 2 3 0

0 1 2 3 4

4 0 1 2 3

3 4 0 1 2

2 3 4 0 1

1 2 3 4 0

逆に数字を左に一つずつ移動させることによっても n次ラテン方陣を得る。n =

1

Page 2: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

2, 3, 4, 5の場合は以下のとおりである。

0 1

1 0

0 1 2

1 2 0

2 0 1

0 1 2 3

1 2 3 0

2 3 0 1

3 0 1 2

0 1 2 3 4

1 2 3 4 0

2 3 4 0 1

3 4 0 1 2

4 0 1 2 3

もちろん、n ≥ 6でも上記のラテン方陣を構成できる。さらに、上記の系列以外にもラテン方陣が存在することは後で示す。

3 オイラー方陣n次方陣に数を入れたもの Aの i行 j列の数が aij であるとき、A = (aij)で表す。二つの n次ラテン方陣A = (aij)とB = (bij)に対して、(aij, bij)のすべてが互いに異なるとき、(aij, bij)から定まる n次方陣を n次オイラー方陣と呼ぶ。ラテン方陣の節で挙げた二系列のラテン方陣は、奇数次の場合にはこれらからオイラー方陣を構成できる。n = 3, 5の場合は以下のとおりである。

(0, 0) (1, 1) (2, 2)

(2, 1) (0, 2) (1, 0)

(1, 2) (2, 0) (0, 1)

(0, 0) (1, 1) (2, 2) (3, 3) (4, 4)

(4, 1) (0, 2) (1, 3) (2, 4) (3, 0)

(3, 2) (4, 3) (0, 4) (1, 0) (2, 1)

(2, 3) (3, 4) (4, 0) (0, 1) (1, 2)

(1, 4) (2, 0) (3, 1) (4, 2) (0, 3)

他方、偶数次の場合にはラテン方陣の節で挙げた二系列のラテン方陣からオイラー方陣を構成できない。

(0, 0) (1, 1) (2, 2) (3, 3)

(3, 1) (0, 2) (1, 3) (2, 0)

(2, 2) (3, 3) (0, 0) (1, 1)

(1, 3) (2, 0) (3, 1) (0, 2)

4 オイラー方陣から魔方陣へn次オイラー方陣の数の組 (a, b)を 2桁の n進法の表記 abに直すと、結果は魔方陣になることがわかる。どの行、どの列でも 1桁目の数は 0から n− 1までの整数が 1回ずつ現れるので、1桁目の数の和は等しい。2桁目の数の和についても同様にどの行、どの列でも 2桁目の数の和は等しい。したがって、この n進法の表記による方陣は魔方陣になることがわかる。

2

Page 3: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

オイラー方陣の節で挙げたオイラー方陣の例から魔方陣を作ってみよう。例に挙げた 3, 5次オイラー方陣から 3, 5進法による 3, 5次方陣を作ると、

00 11 22

21 02 10

12 20 01

00 11 22 33 44

41 02 13 24 30

32 43 04 10 21

23 34 40 01 12

14 20 31 42 03

これらを 10進法に直すと

0 4 8

7 2 3

5 6 1

0 6 12 18 24

21 2 8 14 15

17 23 4 5 11

13 19 20 1 7

9 10 16 22 3

となり、3次と 5次の魔方陣を得る。以上の方法によって、3以上の奇数次の魔方陣を作ることができる。しかし、上記の方法では特別な形の奇数次の魔方陣しか作ることができない。そこで、右移動と左移動によるラテン方陣の作成法を詳しく調べることによってその拡張を次の節で考える。

5 ラテン方陣の作成案ラテン方陣の節で扱った右に一つずつ数字を移動させる方法と左に一つずつ数字を移動させる方法を行番号と列番号を使って数式で表してみよう。行番号と列番号はどちらも 0から始めることにする。行番号に従って数字が右に一つずつ移動するラテン方陣は、列番号が 1増えると数字が 1増え行番号が 1増えると数字が1減るので、

0 1 2

2 0 1

1 2 0

−0 + 0 −0 + 1 −0 + 2

−1 + 0 −1 + 1 −1 + 2

−2 + 0 −2 + 1 −2 + 2

となっていて、一部の i行 j列の成分は−i+ jになっている。しかし、このままでは 0, 1, 2の範囲を超えるので、計算結果が 0, 1, 2の範囲に収まるようにする必要がある。行番号に従って数字が左に一つずつ移動するラテン方陣は、列番号が 1増えると数字が 1増え行番号が 1増えると数字が 1増えるので、

0 1 2

1 2 0

2 0 1

0 + 0 0 + 1 0 + 2

1 + 0 1 + 1 1 + 2

2 + 0 2 + 1 2 + 2

3

Page 4: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

となっていて、一部の i行 j列の成分は i+ jになっている。数値が左の方陣と一致するために、計算結果を 3で割った余りを対応させる。余りを定める基本には次の事実がある。整数 nに対して

n = 3q + r, 0 ≤ r < 3

を満たす整数 q, rが一意的に存在する。nを 3で割った余りが rである。計算結果を 3で割って余りを対応させると左の方陣に一致する。上記のラテン方陣の数式による作成法は、3次に限らず一般の次数で成り立つ。そのとき、基本になるのが次の事実である。mを自然数とする。整数 nに対して

n = m · q + r, 0 ≤ r < m

を満たす整数 q, rが一意的に存在する。nをmで割った余りが rである。4次でも同様の作成法を書くと次のようになる。

0 1 2 3

3 0 1 2

2 3 0 1

1 2 3 0

−0 + 0 −0 + 1 −0 + 2 −0 + 3

−1 + 0 −1 + 1 −1 + 2 −1 + 3

−2 + 0 −2 + 1 −2 + 2 −2 + 3

−3 + 0 −3 + 1 −3 + 2 −3 + 3

0 1 2 3

1 2 3 0

2 3 0 1

3 0 1 2

0 + 0 0 + 1 0 + 2 0 + 3

1 + 0 1 + 1 1 + 2 1 + 3

2 + 0 2 + 1 2 + 2 2 + 3

3 + 0 3 + 1 3 + 2 3 + 3

左の方陣はそれぞれ i行 j列の成分には−i+ jと i+ jの結果を 4で割った余りが対応している。一般の次数で偶数次のときは右に一つずつ数字を移動させる方法と左に一つずつ数字を移動させる方法から定まるラテン方陣ではオイラー方陣が定まらないことと、奇数次のときは右に一つずつ数字を移動させる方法と左に一つずつ数字を移動させる方法から定まるラテン方陣でオイラー方陣が定まることを証明する。偶数次のとき、次数を n = 2m とする。n 次ラテン方陣に入る数の範囲は、

0, . . . , 2m− 1である。0行 0列 (0, 0)におけるそれぞれのラテン方陣の数字は

−0 + 0 = 0, 0 + 0 = 0

となり (0, 0)が対応する。m行m列 (m,m)におけるそれぞれのラテン方陣の数字は

−m+m = 0, m+m = 2m = n = 0

4

Page 5: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

となり (0, 0)が対応する。したがって、これからオイラー方陣は定まらない。

0 · · · m · · ·0 (0, 0)...

m (0, 0)...

奇数次のとき、次数を n = 2m + 1とする。Zn = {0, 1, . . . , n − 1}とおく。Znの元の和と差は通常の和と差の結果を nで割った余りを対応させる。右に一つずつ数字を移動させる方法と左に一つずつ数字を移動させる方法でオイラー方陣になることを証明するためには、写像

Zn × Zn → Zn × Zn; (i, j) 7→ (−i+ j, i+ j)

が全単射になることを示せばよい。そのためには全射になることを示せば十分である。任意の a, b ∈ Znに対して連立方程式{

−i+ j = a

i+ j = b

が解 (i, j) ∈ Zn × Znを持つことを示せばよい。二つの等式を加えると 2j = a+ b

を得る。c ∈ Znに対して xを未知数とする方程式 2x = cが Znにおいて解を持つかという問題になる。これは写像

Zn → Zn; k 7→ 2k

が全射かという問題と同値である。この対応は

k 0 · · · m m+ 1 · · · 2m

2k 0 · · · 2m 1 · · · 2m− 1

となり全射になる。したがって、方程式 2x = cは Znにおいて解を持つ。これより、2j = a+ bを満たす j ∈ Znは存在する。元の連立方程式の二つの等式を引くと 2i = −a + bを得る。上で示したことからこの方程式も解 i ∈ Znを持つ。以上より上記の連立方程式は解を持つことになり、二つのラテン方陣からオイラー方陣が作成できることがわかる。ラテン方陣作成の際に−i + jと i + jという数式を上では使ったが、これらは

i, jの一次式の特別な形であり、i, jの係数が±1のみである。より一般的な一次式を考えようとすると、積も必要になる。0, 1, 2, . . . ,m− 1の数の集まりに対して、二つの数の和をmで割った余りを対応させることで新しい和を定めてラテン方陣作成に利用した。0, 1, 2, . . . ,m− 1の数の集まりに新しい積を定めることでより多くのラテン方陣を作成できるようにしたい。次の節では 0, 1, 2, . . . ,m− 1の数の集まりに和と積を定める。

5

Page 6: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

6 剰余環ラテン方陣とオイラー方陣を構成するために利用する数の体系を定める。nを 2

以上の整数とする。Zm = {0, 1, . . . ,m− 1}

によって集合Zmを定める。Zmの元 a, bに対して通常の和 a+ bを nで割ったときの余りを対応させることでZnの元の和を定める。同様に通常の積 a · bをmで割ったときの余りを対応させることでZmの元の積を定める。この和と積を定めたZm

を剰余環という。整数の和と積が結合法則、交換法則、分配法則を満たすことから、剰余環の和と積も結合法則、交換法則、分配法則を満たすことがわかる。Z2

の和と積は次のようになる。

+ 0 1

0 0 1

1 1 0

· 0 1

0 0 0

1 0 1

Z3の和と積は次のようになる。

+ 0 1 2

0 0 1 2

1 1 2 0

2 2 0 1

· 0 1 2

0 0 0 0

1 0 1 2

2 0 2 1

Z4の和と積は次のようになる。

+ 0 1 2 3

0 0 1 2 3

1 1 2 3 0

2 2 3 0 1

3 3 0 1 2

· 0 1 2 3

0 0 0 0 0

1 0 1 2 3

2 0 2 0 2

3 0 3 2 1

Z5の和と積は次のようになる。

+ 0 1 2 3 4

0 0 1 2 3 4

1 1 2 3 4 0

2 2 3 4 0 1

3 3 4 0 1 2

4 4 0 1 2 3

· 0 1 2 3 4

0 0 0 0 0 0

1 0 1 2 3 4

2 0 2 4 1 3

3 0 3 1 4 2

4 0 4 3 2 1

m ≥ 6の場合も同様に Zmの和と積の表を作ることができる。

6

Page 7: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

7 剰余環の一次関数からラテン方陣へn次方陣の x行 y列の正方形に入れる数をZnの演算を利用して定める。ここでは一次関数を使った対応を考える。x行 y列の数を a, b, c ∈ Znによって

(∗) a · x+ b · y + c

を対応させる。結果がラテン方陣になる必要十分条件は、各列番号 yが定まっているときに行番号 xが 0から n− 1まで動くとき、(∗)も 0から n− 1までのすべてを動き、各行番号 xが定まっているときに列番号 yが 0から n− 1まで動くとき、(∗)も 0から n− 1までのすべてを動くことである。これは a, d ∈ Znに対して xが0から n− 1まで動くとき、

(∗∗) a · x+ d

が 0から n− 1までのすべてを動くかという問題を解決すればよい。さらに、(∗∗)が 0から n− 1までのすべてを動くことと

(∗ ∗ ∗) a · x

が 0から n− 1までのすべてを動くことと同等になる。これは、aが nと互いに素であることと同等になることが知られている。nが小さいときはすでに書いた剰余環の積の表から確認できる。たとえば、n = 3のとき 1x+ 1yから定まるラテン方陣は

0 1 2

1 2 0

2 0 1

であり、2x+ 1y = −1x+ 1yから定まるラテン方陣は

0 1 2

2 0 1

1 2 0

である。これらは 2節で扱ったラテン方陣である。他にも、いろいろな係数の一次式に対してラテン方陣を作ることができる。n = 4のときを考えてみよう。1x+ 1yから定まるラテン方陣は

0 1 2 3

1 2 3 0

2 3 0 1

3 0 1 2

7

Page 8: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

であり、3x+ 1y = −1x+ 1yから定まるラテン方陣は

0 1 2 3

3 0 1 2

2 3 0 1

1 2 3 0

である。これらは 2節で扱ったラテン方陣である。

8 剰余環の一次関数からオイラー方陣へ7節では剰余環を利用して、ラテン方陣を作成した。二つのラテン方陣からオイラー方陣を作るために、次の連立方程式を考える。

(∗)

{ax+ by + e = u

cx+ dy + f = v

ax+ by + e = uから一つのラテン方陣が定まり、cx+ dy + f = vからもう一つのラテン方陣が定まるとする。そのための必要十分条件は a, b, c, dがそれぞれnと互いに素になることである。さらに、これら二つのラテン方陣からオイラー方陣が定まるための必要十分条件は、Znの任意の u, vに対して連立方程式 (∗)が解 x, y

を持つことである。そこで、連立方程式 (∗)が解けるかどうかを考えてみよう。(∗)を

(∗∗)

{ax+ by = u− e

cx+ dy = v − f

と変形する。第一行に dをかけ、第二行に bをかけると{adx+ bdy = d(u− e)

bcx+ bdy = b(v − f)

となる。第一行から第二行を引くと

(ad− bc)x = d(u− e)− b(v − f).

これより、ad− bcが Znにおいて積の逆元 (ad− bc)−1を持てば、

x = (ad− bc)−1(d(u− e)− b(v − f))

となる。同様に (∗∗)の第一行に cをかけ、第二行に aをかけ第二行から第一行を引き

y = (ad− bc)−1(a(v − f)− c(u− e))

8

Page 9: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

を得る。Znにおいて積の逆元を持つことは、nと互いに素になることと同等なので、ad−bc

が nと互いに素ならば、連立方程式 (∗)は任意の u, v ∈ Znに対して解を持つことになり、オイラー方陣を定める二つのラテン方陣を構成できる。n = 3のときは、1, 2から a, b, c, dを ad− bcが 3と互いに素になるように定めればよい。

a = 1, b = 1, c = 2, d = 1, e = f = 0

とすると、7節ですでにみたようにラテン方陣

0 1 2

1 2 0

2 0 1

0 1 2

2 0 1

1 2 0

を得る。これら二つのラテン方陣からオイラー方陣さらに魔方陣を作ることができる。n = 4のときは、1, 3から a, b, c, dを ad− bcが 4と互いに素になるように定めればよいが、どのように組み合わせても ad− bcは奇数同士の差になり偶数になるので、4と互いに素になるように定めることはできない。したがって、n = 4の場合にはこの方法でオイラー方陣を作ることはできない。n = 5のときは、1, 2, 3, 4から a, b, c, dを ad− bcが 5と互いに素になるように定めればよい。

a = 2, b = 1, c = 1, d = 1, e = f = 0

とすると、二つのラテン方陣

0 1 2 3 4

2 3 4 0 1

4 0 1 2 3

1 2 3 4 0

3 4 0 1 2

0 1 2 3 4

1 2 3 4 0

2 3 4 0 1

3 4 0 1 2

4 0 1 2 3

からオイラー方陣と 5進法による魔方陣

0, 0 1, 1 2, 2 3, 3 4, 4

2, 1 3, 2 4, 3 0, 4 1, 0

4, 2 0, 3 1, 4 2, 0 3, 1

1, 3 2, 4 3, 0 4, 1 0, 2

3, 4 4, 0 0, 1 1, 2 2, 3

00 11 22 33 44

21 32 43 04 10

42 03 14 20 31

13 24 30 41 02

34 40 01 12 23

9

Page 10: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

を得る。魔方陣を 10進法の表記に直すと次を得る。

0 6 12 18 24

11 17 23 4 5

22 3 9 10 16

8 14 15 21 2

19 20 1 7 13

他の組み合せでも二つのラテン方陣およびオイラー方陣を構成できる。

a = 2, b = 1, c = 1, d = 1, e = f = 0

とすると、この二つのラテン方陣およびそれらからオイラー方陣を作れる。n = 6のときは、1, 5から a, b, c, dを ad− bcが 6と互いに素になるように定めればよいが、どのように組み合わせても ad− bcは奇数同士の差になり偶数になるので、6と互いに素になるように定めることはできない。したがって、n = 6の場合にはこの方法でオイラー方陣を作ることはできない。

9 有限体8では剰余環 Z4から 4次オイラー方陣を作ることはできなかった。この節では別な数の体系である有限体について考え、次の節で有限体を使って一次関数からオイラー方陣を作る。剰余環は和と積が定まっていて、これらの演算の単位元 0と 1が存在して、結合法則、交換法則、分配法則が成り立っていた。これらの条件に加えて 0以外の元が積の逆元を持つ数の体系を体として定義する。

定義 9.1 加法+と乗法 ·という二種類の演算が定義された集合F が次の条件を満たすとき、F を体という。元の個数が有限の体を有限体という。

(1) 加法の結合法則が成り立つ。すなわち

(a+ b) + c = a+ (b+ c) (a, b, c ∈ F ).

(2) 加法の単位元 0が存在する。すなわち

a+ 0 = 0 + a = a (a ∈ F ).

(3) 加法の逆元が存在する。すなわち、任意の a ∈ F に対してある b ∈ F が存在して a+ b = b+ a = 0が成り立つ。

10

Page 11: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

(4) 加法は可換である。すなわち

a+ b = b+ a (a, b ∈ F ).

(5) 乗法の結合法則が成り立つ。すなわち

(a · b) · c = a · (b · c) (a, b, c ∈ F ).

(6) 乗法の単位元 1が存在する。すなわち

a · 1 = 1 · a = a (a ∈ F ).

(7) 乗法の逆元が存在する。すなわち、0ではない任意の a ∈ F に対してあるb ∈ F が存在して a · b = b · a = 1が成り立つ。

(8) 乗法は可換である。すなわち

a · b = b · a (a, b ∈ F ).

(9) 加法と乗法の分配法則が成り立つ。すなわち

a · (b+ c) = a · b+ a · c (a, b, c ∈ F ).

注意 9.2 (3)における aの加法の逆元 bは aに対して一意的に定まることがわかる。これを−aで表す。(7)における aの加法の逆元 bは aに対して一意的に定まることがわかる。これを a−1で表す。

例 9.3 実数の全体Rと複素数の全体Cは通常の加法と乗法に関して体になる。

例 9.4 体の定義 (定義 9.1)より、体には加法の単位元 0と乗法の単位元 1は必ず存在する。この二元 0, 1だけからなる体は剰余環Z2 = {0, 1}にほかならない。この体をF 2で表す。

定理 9.5 有限体の元の個数は素数の羃になり、逆に素数の羃の元を持つ体は存在し、同型を除いて一意的である。

元の個数が qの体は同型を除いて一意的に定まるので、F qと書く。環の剰余環として体を構成するので、環とその剰余環についてまとめておく。

定義 9.6 加法+と乗法 ·という二種類の演算が定義された集合Rが定義 9.1の (7)

以外の条件を満たすとき、Rを環という。

通常は上の定義は可換環の定義であるが、この講義では可換環しか扱わないので、単に環と呼ぶことにする。

11

Page 12: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

定義 9.7 環Rの部分集合 Sが次の条件を満たすとき、SをRの部分環という。

(1) 加法に関して閉じている。すなわち

s+ t ∈ S (s, t ∈ S).

(2) Rの加法の単位元 0を Sが含む。

(3) 加法の逆元が存在する。すなわち、任意の a ∈ Sに対してある b ∈ Sが存在して a+ b = b+ a = 0が成り立つ。

(4) 乗法に関して閉じている。すなわち

st ∈ S (s, t ∈ S).

このとき、Rの演算の制限によって Sの演算を定めると Sは環になる。部分環 S

がさらにs ∈ S, r ∈ R ⇒ sr ∈ S

を満たすとき、SをRのイデアルという。

例 9.8 整数の全体 Zは通常の加法と乗法に関して環になる。±1以外の元は乗法に関する逆元を持たないので、Zは体ではない。非負整数 nに対して

nZ = {nz | z ∈ Z}

はZのイデアルになる。逆にZのイデアルはこの形に限られることがわかる。

命題 9.9 環Rが体であるための必要十分条件は、Rが {0}と自分自身以外のイデアルを持たないことである。

定義 9.10 Rを環とし、IをRのイデアルとする。Rの二元 r, r′に対して r−r′ ∈ I

のときにr ≡ r′(modI)

と表し、二元の間の I に関する合同関係を定める。すると、この合同関係は同値関係になる。さらに、Rの加法と乗法はこの同値類の全体に加法と乗法を誘導し、同値類の全体は環になる。この同値類全体の成す環をR/Iで表し、Rの Iによる剰余環と呼ぶ。この同値類を剰余類という。

R/Iの演算が同値類の間で代表元のとり方に依存せずに定まることは、Iがイデアルであることからわかる。

定義 9.11 環のイデアルが包含関係に関して極大であるとき、極大イデアルと呼ぶ。すなわち、環Rのイデアル Iが極大イデアルであるとは、I ⊂ J ⊂ Rとなるイデアル J が IとR以外にはないことである。

12

Page 13: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

命題 9.12 環Rのイデアル Iについて、剰余環R/Iが体であるための必要十分条件は、IがRの極大イデアルになることである。

命題 9.13 整数環Zのイデアルは例 9.8より非負整数 nによって nZと表せる。非負整数m,nに対して以下が成り立つ。

(1) mZ = nZ ⇔ m = n

(2) mZ ⊂ nZ ⇔ nはmを割り切る

(3) nZは極大イデアル ⇔ nは素数

系 9.14 素数 pに対して剰余環 Z/pZは体になる。したがって、F p = Z/pZである。

F 2については例 9.4で扱ったので、次に元の個数が少ないF 3について考える。

例 9.15 F 3 = Z/3Zより、加法と乗法は次の表のように定まる。

+ 0 1 2

0 0 1 2

1 1 2 0

2 2 0 1

· 0 1 2

0 0 0 0

1 0 1 2

2 0 2 1

F 4は元の個数が素数の羃なので、すぐには扱えない。次に元の個数が少ないF 5

について考える。

例 9.16 F 5 = Z/5Zより、加法と乗法は次の表のように定まる。

+ 0 1 2 3 4

0 0 1 2 3 4

1 1 2 3 4 0

2 2 3 4 0 1

3 3 4 0 1 2

4 4 0 1 2 3

· 0 1 2 3 4

0 0 0 0 0 0

1 0 1 2 3 4

2 0 2 4 1 3

3 0 3 1 4 2

4 0 4 3 2 1

元の個数が 6の体は定理 9.5より存在しない。元の個数が素数の体は整数環の剰余環として構成できるが、元の個数が素数の冪の体の構成には多項式環が必要になる。

13

Page 14: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

10 多項式環の剰余体としての構成この節では元の個数が素数の冪の体を構成するために、多項式環を導入しその剰余環を考える。

定義 10.1 F を体とする。xを変数とし F の元を係数とする多項式

f(x) = a0xn + a1x

n−1 + · · ·+ an−1x+ an (ai ∈ F )

の全体を F [x]で表す。F [x]の元の加法と乗法を通常の多項式の場合と同様に定義すれば、F [x]は環になる。この環の構造を持つ F [x]を F 上の多項式環と呼ぶ。上記の多項式 f(x)の係数が a0 = 0を満たすとき、nを f(x)の次数といい、n =

deg f, deg f(x)と書く。F [x]の元としての 0の次数は−∞と定める。

通常の多項式の次数と同様に以下が成り立つ。

deg(f(x)g(x)) = deg f(x) + deg g(x)

deg(f(x) + g(x)) ≤ max{deg f(x), deg g(x)}

ここで、非負整数 nに対して n+ (−∞) = −∞, −∞ < n と約束しておく。

定義 10.2 正の次数の多項式 f(x) ∈ F [x]に対して、

f(x) = g(x)h(x) (deg g(x) > 0, deg h(x) > 0)

を満たす二つの多項式 g(x), h(x) ∈ F [x]が存在するとき、f(x)は可約であるといい、可約ではないとき既約であるという。

定理 10.3 体F 上の多項式環F [x]のイデアル Iが極大イデアルになるための必要十分条件は、ある既約多項式 f(x)が存在して I = f(x)F [x]となることである。

定理 10.4 素数 pと自然数 nに対して、F p[x]において xpn − xを割る既約多項式f(x)が存在して、有限体F pnはF p[x]/f(x)F p[x]に同型になる。

素数 pと自然数nに対して上記の定理の既約多項式 f(x)を見つけて、有限体F pn

を構成し、それを利用して pn次魔方陣を次節以降で構成する。

11 F 4の一次関数から魔方陣へF 4は定理 10.4の p = 2, n = 2の場合に対応する。

x4 − x = x(x3 − 1) = x(x− 1)(x2 + x+ 1).

14

Page 15: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

x2 + x + 1 ∈ F 2[x]が既約多項式であることを示す。F 2[x]の一次式のすべてはx, x+ 1である。これらの積のすべての組み合せは、x2, x2 + x, x2 + 1である。これらのどれにも一致しないので、x2 + x+ 1は既約多項式である。

F 2[x]/(x2 + x+ 1)F 2[x] = {[0], [1], [x], [x+ 1]}

が成り立つ。そこでF 4 = {[0], [1], [x], [x+ 1]}

と書くことにする。加法と乗法は次の表のように定まる。

+ [0] [1] [x] [x+ 1]

[0] [0] [1] [x] [x+ 1]

[1] [1] [0] [x+ 1] [x]

[x] [x] [x+ 1] [0] [1]

[x+ 1] [x+ 1] [x] [1] [0]

· [0] [1] [x] [x+ 1]

[0] [0] [0] [0] [0]

[1] [0] [1] [x] [x+ 1]

[x] [0] [x] [x+ 1] [1]

[x+ 1] [0] [x+ 1] [1] [x]

0以外の各行各列に 1があることから乗法の逆元の存在を直接確かめることもできる。記述を簡単にするために [0] = 0, [1] = 1, [x] = α, [x + 1] = β と書くことにすると、F 4の和と積は次のようになる。

+ 0 1 α β

0 0 1 α β

1 1 0 β α

α α β 0 1

β β α 1 0

· 0 1 α β

0 0 0 0 0

1 0 1 α β

α 0 α β 1

β 0 β 1 α

7節の「剰余環の一次関数からラテン方陣へ」と 8節の「剰余環の一次関数からオイラー方陣へ」の議論はそのまま有限体にも適用できて、次の結果を得る。有限体 F の元 a, bに対して、写像

F → F ; x 7→ ax+ b

が全単射になるための必要十分条件は、a = 0である。F の元 a, b, c, d, e, f に対して、写像

F × F → F × F ; (x, y) 7→ (ax+ by + e, cx+ dy + f)

が全単射になるための必要十分条件は、ad−bc = 0である。F の元全体を一列に並べて 0, 1, . . . , |F |−1に対応させる。上の結果より、a = 0ならば ax+ bはラテン方

15

Page 16: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

陣を生成し、a = 0, b = 0, c = 0, d = 0かつad−bc = 0ならばax+by+e, cx+dy+f

はオイラー方陣を生成する。F 4の場合、行や列において 0, 1, α, βの順序で並べることにする。x+ yに対応するラテン方陣および 0, 1, α, βを 0, 1, 2, 3に置き換えたものは

0 1 α β

1 0 β α

α β 0 1

β α 1 0

0 1 2 3

1 0 3 2

2 3 0 1

3 2 1 0

となり、2節で作ったものとは異なるラテン方陣を作れる。次に αx + yに対応するラテン方陣および 0, 1, α, βを 0, 1, 2, 3に置き換えたものは

0 1 α β

α β 0 1

β α 1 0

1 0 β α

0 1 2 3

2 3 0 1

3 2 1 0

1 0 3 2

上記の二つのラテン方陣は {x+ y

αx+ y

から定まっていて 1−α = 1+α = βなので、これらから定まる二つのラテン方陣はオイラー方陣を定め、それから定まる 4進法および 10進法による魔方陣は

0, 0 1, 1 2, 2 3, 3

1, 2 0, 3 3, 0 2, 1

2, 3 3, 2 0, 1 1, 0

3, 1 2, 0 1, 3 0, 2

00 11 22 33

12 03 30 21

23 32 01 10

31 20 13 02

0 5 10 15

6 3 12 9

11 14 1 4

13 8 7 2

αx+ yに対応するラテン方陣は、ラテン方陣の定義である縦と横にもれなく重複なく 0, 1, α, βが現れるということだけではなく、対角線にももれなく重複なく0, 1, α, βが現れる。βx + yも同様な性質を持つことが次のようにわかる。βx + y

に対応するラテン方陣および 0, 1, α, βを 0, 1, 2, 3に置き換えたものは

0 1 α β

β α 1 0

1 0 β α

α β 0 1

0 1 2 3

3 2 1 0

1 0 3 2

2 3 0 1

上記の二番目と三番目のラテン方陣は{αx+ y

βx+ y

16

Page 17: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

から定まっていてα− β = α+ β = 1なので、これから定まる二つのラテン方陣はオイラー方陣を定め、それから定まる 4進法および 10進法による魔方陣は

0, 0 1, 1 2, 2 3, 3

2, 3 3, 2 0, 1 1, 0

3, 1 2, 0 1, 3 0, 2

1, 2 0, 3 3, 0 2, 1

00 11 22 33

23 32 01 10

31 20 13 02

12 03 30 21

0 5 10 15

11 14 1 4

13 8 7 2

6 3 12 9

構成に使った二つのラテン方陣はどちらも、対角線にも 0, 1, α, βがもれなく重複なく現れるので、結果の魔方陣は対角線の和も等しくなる。F 4の元の並べ方 0, 1, α, βについて考えてみよう。

x 0 1 α β

x+ β β α 1 0

となり、βを加えるという操作が 0, 1, α, βの並べ方を逆順にすることがわかる。ax+ by+ cがラテン方陣を定めるとする。すなわち、a = 0かつ b = 0が成り立つ。さらに左上から右下の対角線では ax+ bx+ c = (a+ b)x+ cが対応する。このとき、F 4の元がもれなく重複なく現れるための必要十分条件は a+ b = 0である。右上から左下の対角線では ax + b(x + β) + c = (a + b)x + bβcが対応する。このとき、F 4の元がもれなく重複なく現れるための必要十分条件は a+ b = 0である。以上で、F 4の元を 0, 1, α, βと並べるとき、{

ax+ by + e

cx+ dy + f

が二つのラテン方陣を定め、さらに一つのオイラー方陣を定めるための必要十分条件は a, b, c, d, ad− bcがどれも 0に一致しないことである。さらにオイラー方陣から定まる魔方陣の対角線の和も等しくなるための必要十分条件は a+ b, c+ dがどちらも 0に一致しないことである。

12 F 8の一次関数から魔方陣へF 8は定理 10.4の p = 2, n = 3の場合に対応する。

x8 − x = x(x7 − 1) = x(x− 1)(x6 + x5 + x4 + x3 + x2 + x+ 1).

ここで(x3 + x+ 1)(x3 + x2 + 1) = x6 + x5 + x4 + x3 + x2 + x+ 1

となるので、x8 − x = x(x− 1)(x3 + x+ 1)(x3 + x2 + 1)

17

Page 18: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

を得る。x3 + x+ 1, x3 + x2 + 1 ∈ F 2[x]が既約多項式であることを示す。F 2[x]の定数項の消えない一次式のすべては x+1であり、定数項の消えない二次式のすべては x2 + 1, x2 + x+ 1である。これらの積のすべては、

(x+ 1)(x2 + 1) = x3 + x2 + x+ 1, (x+ 1)(x2 + x+ 1) = x3 + 1

である。x3 + x+ 1, x3 + x2 + 1はこれらのどれにも一致しないので既約多項式である。x3 + x+ 1の定めるイデアルによる剰余環を考える。

F 2[x]/(x3 + x+ 1)F 2[x]

= {[0], [1], [x], [x+ 1], [x2], [x2 + 1], [x2 + x], [x2 + x+ 1]}

が成り立つ。加法と乗法は次の表のように定まる。ただし、剰余類を表す [·]は省略する。

+ 0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 10 0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 11 1 0 x+ 1 x x2 + 1 x2 x2 + x+ 1 x2 + xx x x+ 1 0 1 x2 + x x2 + x+ 1 x2 x2 + 1

x+ 1 x+ 1 x 1 0 x2 + x+ 1 x2 + x x2 + 1 x2

x2 x2 x2 + 1 x2 + x x2 + x+ 1 0 1 x x+ 1x2 + 1 x2 + 1 x2 x2 + x+ 1 x2 + x 1 0 x+ 1 xx2 + x x2 + x x2 + x+ 1 x2 x2 + 1 x x+ 1 0 1

x2 + x+ 1 x2 + x+ 1 x2 + x x2 + 1 x2 x+ 1 x 1 0

· 0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 10 0 0 0 0 0 0 0 01 0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 1x 0 x x2 x2 + x x+ 1 1 x2 + x+ 1 x2 + 1

x+ 1 0 x+ 1 x2 + x x2 + 1 x2 + x+ 1 x2 1 xx2 0 x2 x+ 1 x2 + x+ 1 x2 + x x x2 + 1 1

x2 + 1 0 x2 + 1 1 x2 x x2 + x+ 1 x+ 1 x2 + xx2 + x 0 x2 + x x2 + x+ 1 1 x2 + 1 x+ 1 x x2

x2 + x+ 1 0 x2 + x+ 1 x2 + 1 x 1 x2 + x x2 x+ 1

F 8の元を次の対応によって書き換える。

0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 1

0 1 2 3 4 5 6 7

この対応によって加法と乗法の演算表を書き換えると次のようになる。

+ 0 1 2 3 4 5 6 7

0 0 1 2 3 4 5 6 7

1 1 0 3 2 5 4 7 6

2 2 3 0 1 6 7 4 5

3 3 2 1 0 7 6 5 4

4 4 5 6 7 0 1 2 3

5 5 4 7 6 1 0 3 2

6 6 7 4 5 2 3 0 1

7 7 6 5 4 3 2 1 0

· 0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0 0

1 0 1 2 3 4 5 6 7

2 0 2 4 6 3 1 7 5

3 0 3 6 5 7 4 1 2

4 0 4 3 7 6 2 5 1

5 0 5 1 4 2 7 3 6

6 0 6 7 1 5 3 2 4

7 0 7 5 2 1 6 4 3

18

Page 19: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

行と列の表示は (i, j)で表すことにする。{(x+ 1)i+ j

xi+ j

は二つのラテン方陣と一つのオイラー方陣を定める。(x+ 1)i+ jに対応するラテン方陣と xi+ jに対応するラテン方陣は

0 1 2 3 4 5 6 7

3 2 1 0 7 6 5 4

6 7 4 5 2 3 0 1

5 4 7 6 1 0 3 2

7 6 5 4 3 2 1 0

4 5 6 7 0 1 2 3

1 0 3 2 5 4 7 6

2 3 0 1 6 7 4 5

0 1 2 3 4 5 6 7

2 3 0 1 6 7 4 5

4 5 6 7 0 1 2 3

6 7 4 5 2 3 0 1

3 2 1 0 7 6 5 4

1 0 3 2 5 4 7 6

7 6 5 4 3 2 1 0

5 4 7 6 1 0 3 2

これら二つのラテン方陣から定まるオイラー方陣 (8進法魔方陣)と 10進法魔方陣は以下のようになる。

00 11 22 33 44 55 66 77

32 23 10 01 76 67 54 45

64 75 46 57 20 31 02 13

56 47 74 65 12 03 30 21

73 62 51 40 37 26 15 04

41 50 63 72 05 14 27 36

17 06 35 24 53 42 71 60

25 34 07 16 61 70 43 52

0 9 18 27 36 45 54 63

26 19 8 1 62 55 44 37

52 61 38 47 16 25 2 11

46 39 60 53 10 3 24 17

59 50 41 32 31 22 13 4

33 40 51 58 5 12 23 30

15 6 29 20 43 34 57 48

21 28 7 14 49 56 35 42

F 8の元の並べ方を 0, 1, x, x+ 1, x2, x2 + 1, x2 + x, x2 + x+ 1とする。

i 0 1 x x+ 1 x2 x2 + 1 x2 + x x2 + x+ 1

x2 + x+ 1− i x2 + x+ 1 x2 + x x2 + 1 x2 x+ 1 x 1 0

となり、x2+x+1から引くという操作が 0, 1, x, x+1, x2, x2+1, x2+x, x2+x+1

の並べ方を逆順にすることがわかる。これより、オイラー方陣から定まる魔方陣の対角線の和も等しくなる条件は、F 4の場合と同様に考えられる。{

ai+ bj + e

ci+ dj + f

が二つのラテン方陣と一つのオイラー方陣を定めるとき、さらにオイラー方陣から定まる魔方陣の対角線の和も等しくなるための必要十分条件は、a+b = 0, a−b = 0,

19

Page 20: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

c + d = 0, c − d = 0である。ただし F 8では和と差は同じことなので、必要十分条件は a + b = 0, c + d = 0である。上で定めた a = x + 1, b = 1, c = x, d = 1,

e = f = 0から定まる魔方陣は対角線の和も等しくなる。他にも次のような一次式から対角線の和も等しい魔方陣が定まる。{

x2i+ j

xi+ j

{(x2 + 1)i+ j

xi+ j

{(x2 + x)i+ j

xi+ j

{(x2 + x+ 1)i+ j

xi+ j

13 F 9の一次関数から魔方陣へF 9は定理 10.4の p = 3, n = 2の場合に対応する。

x9 − x = x(x− 1)(x+ 1)(x2 + 1)(x4 + 1).

ここで (x2 + x+ 2)(x2 + 2x+ 2) = x4 + 1となるので、

x9 − x = x(x− 1)(x+ 1)(x2 + 1)(x2 + x+ 2)(x2 + 2x+ 2)

を得る。一次式の積をすべて考えることにより、x2+1, x2+x+2, x2+2x+2 ∈ F 3[x]

が既約多項式であることがわかる。x2+1の定めるイデアルによる剰余環を考える。

F 3[x]/(x2 + 1)F 3[x] = {[0], [1], [2], [x], [x+ 1], [x+ 2], [2x], [2x+ 1], [2x+ 2]}

が成り立つ。加法と乗法は次の表のように定まる。ただし、剰余類を表す [·]は省略する。

+ 0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

0 0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

1 1 2 0 x+ 1 x+ 2 x 2x+ 1 2x+ 2 2x

2 2 0 1 x+ 2 x x+ 1 2x+ 2 2x 2x+ 1

x x x+ 1 x+ 2 2x 2x+ 1 2x+ 2 0 1 2

x+ 1 x+ 1 x+ 2 x 2x+ 1 2x+ 2 2x 1 2 0

x+ 2 x+ 2 x x+ 1 2x+ 2 2x 2x+ 1 2 0 1

2x 2x 2x+ 1 2x+ 2 0 1 2 x x+ 1 x+ 2

2x+ 1 2x+ 1 2x+ 2 2x 1 2 0 x+ 1 x+ 2 x

2x+ 2 2x+ 2 2x 2x+ 1 2 0 1 x+ 2 x x+ 1

· 0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

0 0 0 0 0 0 0 0 0 0

1 0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

2 0 2 1 2x 2x+ 2 2x+ 1 x x+ 2 x+ 1

x 0 x 2x 2 x+ 2 2x+ 2 1 x+ 1 2x+ 1

x+ 1 0 x+ 1 2x+ 2 x+ 2 2x 1 2x+ 1 2 x

x+ 2 0 x+ 2 2x+ 1 2x+ 2 1 x x+ 1 2x 2

2x 0 2x x 1 2x+ 1 x+ 1 2 2x+ 2 x+ 2

2x+ 1 0 2x+ 1 x+ 2 x+ 1 2 2x 2x+ 1 x 1

2x+ 2 0 2x+ 2 x+ 1 2x+ 1 x 2 x+ 2 1 2x

20

Page 21: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

F 9の元を次の対応によって書き換える。

0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

0 1 2 3 4 5 6 7 8

この対応によって加法と乗法の演算表を書き換えると次のようになる。

+ 0 1 2 3 4 5 6 7 8

0 0 1 2 3 4 5 6 7 8

1 1 2 0 4 5 3 7 8 6

2 2 0 1 5 3 4 8 6 7

3 3 4 5 6 7 8 0 1 2

4 4 5 3 7 8 6 1 2 0

5 5 3 4 8 6 7 2 0 1

6 6 7 8 0 1 2 3 4 5

7 7 8 6 1 2 0 4 5 3

8 8 6 7 2 0 1 5 3 4

· 0 1 2 3 4 5 6 7 8

0 0 0 0 0 0 0 0 0 0

1 0 1 2 3 4 5 6 7 8

2 0 2 1 6 8 7 3 5 4

3 0 3 6 2 5 8 1 4 7

4 0 4 8 5 6 1 7 2 3

5 0 5 7 8 1 3 4 6 2

6 0 6 3 1 7 4 2 8 5

7 0 7 5 4 2 6 7 3 1

8 0 8 4 7 3 2 5 1 6

行と列の表示は (i, j)で表すことにする。{(x+ 1)i+ j

xi+ j

は二つのラテン方陣と一つのオイラー方陣を定める。(x+ 1)i+ jと xi+ jに対応するラテン方陣は

0 1 2 3 4 5 6 7 8

4 5 3 7 8 6 1 2 0

8 6 7 2 0 1 5 3 4

5 3 4 8 6 7 2 0 1

6 7 8 0 1 2 3 4 5

1 2 0 4 5 3 7 8 6

7 8 6 1 2 0 4 5 3

2 0 1 5 3 4 8 6 7

3 4 5 6 7 8 0 1 2

0 1 2 3 4 5 6 7 8

3 4 5 6 7 8 0 1 2

6 7 8 0 1 2 3 4 5

2 0 1 5 3 4 8 6 7

5 3 4 8 6 7 2 0 1

8 6 7 2 0 1 5 3 4

1 2 0 4 5 3 7 8 6

4 5 3 7 8 6 1 2 0

7 8 6 1 2 0 4 5 3

これら二つのラテン方陣から定まるオイラー方陣 (9進法魔方陣)と 10進法魔方陣

21

Page 22: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

は以下のようになる。

00 11 22 33 44 55 66 77 88

43 54 35 76 87 68 10 21 02

86 67 78 20 01 12 53 34 45

52 30 41 85 63 74 28 06 17

65 73 84 08 16 27 32 40 51

18 26 07 42 50 31 75 83 64

71 82 60 14 25 03 47 58 36

24 05 13 57 38 46 81 62 70

37 48 56 61 72 80 04 15 23

0 10 20 30 40 50 60 70 80

39 49 32 69 79 62 9 19 2

78 61 71 18 1 11 48 31 41

47 27 37 77 57 67 26 6 16

59 66 76 8 15 25 29 36 46

17 24 7 38 45 28 68 75 58

64 74 54 13 23 3 43 53 33

22 5 12 52 35 42 73 56 63

34 44 51 55 65 72 4 14 21

F 9の元の並べ方を 0, 1, 2, x, x+ 1, x+ 2, 2x, 2x+ 1, 2x+ 2とする。

i 0 1 2 x x+ 1 x+ 2 2x 2x+ 1 2x+ 2

2x+ 2− i 2x+ 2 2x+ 1 2x x+ 2 x+ 1 x 2 1 0

となり、2x+2から引くという操作が 0, 1, 2, x, x+1, x+2, 2x, 2x+1, 2x+2 の並べ方を逆順にすることがわかる。これより、オイラー方陣から定まる魔方陣の対角線の和も等しくなる条件は、F 4の場合と同様になる。これより、上記の魔方陣の対角線の和も等しくなる。他にも次のような一次式から対角線の和も等しい魔方陣が定まる。{

(x+ 2)i+ j

xi+ j

{2xi+ j

xi+ j

{(2x+ 1)i+ j

xi+ j

{(2x+ 2)i+ j

xi+ j

14 有限体の一次関数からオイラー方陣へこの節では、有限体の一次式からオイラー方陣および魔方陣を構成する方法をまとめておく。有限体 F に対して一次関数からラテン方陣を構成し、さらに二つの一次関数から二つのラテン方陣およびオイラー方陣を次の条件の元で構成できる。F の 0以外の元は積の逆元を持つので、a, b, c ∈ F − {0}と c ∈ F に対して x行 y列の数をax+ by + cとすることによりラテン方陣を作れる。有限体 F の元の個数を nとする。ad− bc = 0となる a, b, c, d ∈ F− {0}および

e, f ∈ Fをとる。n次方陣の x行 y列の数を{ax+ by + e

cx+ dy + f

によって二つのラテン方陣を定めると、これらはオイラー方陣、さらに n進法表記の魔方陣を定める。

22

Page 23: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

F の元を並べて a0, a1, . . . , an−1とする。この並べ方によって ax+ by + cが定めるラテン方陣について考える。左上から右下への対角線の i番目の成分は

aai + bai + c = (a+ b)ai + c

となる。この対角線に F のすべての元が一回ずつ現れるための必要十分条件は、a+ b = 0である。さらに F の元の並べ方が

an−1 − ai = an−1−i

を満たすとする。これまでに扱った有限体の元の並べ方はすべてこの条件を満たす。上記の条件を満たす並べ方になっているとき、右上から左下への対角線の i番目の成分は

aai + ban−1−i + c = aai + b(an−1 − ai) + c = (a− b)ai + ban−1 + c

となる。この対角線に F のすべての元が一回ずつ現れるための必要十分条件は、a− b = 0である。以上より、 {

ax+ by + e

cx+ dy + f

がオイラー方陣を定める条件を満たしていて、さらに a+ b, a− b, c+ d, c− dがすべて 0と異なるとき、オイラー方陣から定まる魔方陣の対角線の和も等しくなる。

15 魔方陣の積定義 15.1 (魔方陣の積) p次魔方陣 (aij)と q次魔方陣 (bkl)の積を、p次魔方陣の(i, j)成分の場所に q次魔方陣の (k, l)成分 bklを bkl + aijq

2に入れ換えた方陣をはめ込んだのものとして定める。

上記の積はテンソル積と呼ばれているが、ここでは簡単に積と呼ぶことにする。

命題 15.2 魔方陣の積は魔方陣である。

例 15.3 1節で挙げた 3次魔方陣の例

3 8 1

2 4 6

7 0 5

23

Page 24: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

とそれ自身との積は

30 35 28 75 80 73 12 17 10

29 31 33 74 76 78 11 13 15

34 27 32 79 72 77 16 9 14

21 26 19 39 44 37 57 62 55

20 22 24 38 40 42 56 58 60

25 18 23 43 36 41 61 54 59

66 71 64 3 8 1 48 53 46

65 67 69 2 4 6 47 49 51

70 63 68 7 0 5 52 45 50

となる。これは 9次魔方陣である。

命題15.2の証明 p次魔方陣の (i, j)成分が aij = 0の場所に 0から q2−1の自然数があり、(i, j)成分が aij = 1の場所に q2から 2q2 − 1の自然数があり、これが続いて (i, j)成分が aij = p2−1の場所に (p2−1)q2から (p2−1)q2+ q2−1 = p2q2−1

の自然数があり、全体では 0から p2q2 − 1の自然数がある。p次魔方陣の各行各列の和をm(p)で表す。上から i番目のブロックの第 k行の成分の和は

p−1∑j=0

q−1∑l=0

(bkl + aijq2) =

p−1∑j=0

(q−1∑l=0

bkl + aijq3

)=

p−1∑j=0

(m(q) + aijq

3)

= pm(q) +

p−1∑j=0

aijq3 = pm(q) +m(p)q3

であり、一定である。列の成分の和も同様の値になり一定である。

16 魔方陣の存在この節では自然数 nに対して n次魔方陣が存在するかどうかについて考える。2

次魔方陣が存在しないことはすぐにわかるので、n ≥ 3の場合を考えればよい。nが奇数のとき、オイラー方陣が存在し、n次魔方陣も存在することはすでに示した。これより、偶数次の魔方陣が存在するかどうかが問題になる。偶数 nは

n = 2ab (a ≥ 1, b :奇数)

と表すことができる。a ≥ 2ならば、有限体F 2aの一次関数から 2a次魔方陣を構成でき、b次魔方陣との積から n = 2ab次魔方陣を構成できる。以上より a = 1の場合が残る。すなわち奇数 bに対して n = 2b次の魔方陣が存在するかという問題が残る。bは奇数だから b = 2c+ 1と表すことができ、n = 4c+ 2となる。

24

Page 25: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

オイラーは 1782年に n = 4c + 2を次数に持つオイラー方陣は存在しないことを予想した。1900年頃にG. Tarryは 6次オイラー方陣が存在しないことを証明した。その後、このオイラーの問題は長い間解かれていなかったが、1959年にR. C.

Bose, S. S. ShrikhandeとE. T. Parkerによって、n = 4c+2 ≥ 10の場合にはオイラー方陣は存在するという形で解決された。3次以上の魔方陣は 6次以外では存在することが以上でわかる。6次オイラー方陣は存在しないが、これだけでは 6次魔方陣が存在しないかどうかはわからない。実は次に示すように 6次魔方陣は存在することが知られている。

0 1 2 33 34 35

30 31 14 3 22 5

29 28 27 8 7 6

11 10 9 26 25 24

23 19 21 20 4 18

12 16 32 15 13 17

したがって、次の定理を得る。

定理 16.1 n ≥ 3に対して n次魔方陣は存在する。

17 体上のアフィン平面定義 17.1 F を体とする。積

F 2 = F × F = {(x, y) | x, y ∈ F}

を体 F 上のアフィン平面と呼ぶ。

F が実数Rの場合、R2は座標平面と同じものである。F がF 2の場合、

F 22 = {(0, 0), (1, 0), (0, 1), (1, 1)}

は 4個の点からなる有限集合である。

定義 17.2 体F の元 a, b, cをとる。ただし、a, bの少なくとも一方は 0ではないと仮定する。このとき、F 上のアフィン平面 F 2の部分集合

{(x, y) ∈ F 2 | a · x+ b · y + c = 0}

を直線と呼ぶ。

25

Page 26: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

F が実数Rの場合、上で定義した直線は座標平面R2の直線と同じものである。F がF 2の場合、直線は以下の 6個である。

{(x, y) ∈ F 22 | 1 · x+ 0 · y + 0 = 0} = {(0, 0), (0, 1)},

{(x, y) ∈ F 22 | 1 · x+ 0 · y + 1 = 0} = {(1, 0), (1, 1)},

{(x, y) ∈ F 22 | 0 · x+ 1 · y + 0 = 0} = {(0, 0), (1, 0)},

{(x, y) ∈ F 22 | 0 · x+ 1 · y + 1 = 0} = {(0, 1), (1, 1)},

{(x, y) ∈ F 22 | 1 · x+ 1 · y + 0 = 0} = {(0, 0), (1, 1)},

{(x, y) ∈ F 22 | 1 · x+ 1 · y + 1 = 0} = {(0, 1), (1, 0)}.

F 22の直線の全体には、F 2

2の 4点から 2点を選ぶすべての組み合せが現れている。座標平面R2の点と直線については次が成り立つ。

(1) 異なる二点 p, qに対して、pと qを含む直線がただ一つ存在する。

(2) 直線 lと点 pに対して、pを含み lと平行な直線がただ一つ存在する。

(3) 一つの直線に含まれない三点が存在する。

これらの性質は一般の体上のアフィン平面の点と直線の性質に拡張できる。そのために、体上のアフィン平面の二つ直線が平行であることを定義しておく。

定義 17.3 体上のアフィン平面の二つ直線が一致するかまたは交わらないとき、これら二つの直線は平行であるという。

定理 17.4 体上のアフィン平面の点と直線について次が成り立つ。

(1) 異なる二点 p, qに対して、pと qを含む直線がただ一つ存在する。

(2) 直線 lと点 pに対して、pを含み lと平行な直線がただ一つ存在する。

(3) 一つの直線に含まれない三点が存在する。

証明 アフィン平面を定める体を F とする。(1) 異なる二点を p = (x0, y0), q = (x1, y1)とする。

(∗) (y0 − y1)x+ (x1 − x0)y + (x0y1 − y0x1) = 0

は直線を定め、(x0, y0)と (x1, y1)を含むことがわかる。(x0, y0)と (x1, y1)を含む直線は (∗)の定める直線に限ることを示す。

ax+ by + c = 0

26

Page 27: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

が定める直線は (x0, y0)と (x1, y1)を含むと仮定する。すると

ax0 + by0 + c = 0, ax1 + by1 + c = 0

が成り立つ。これらから、ある k ∈ F − {0}によって

(a, b, c) = k(y0 − y1, x1 − x0, x0y1 − x1y0)

が成り立つ。以上より (x0, y0)と (x1, y1)を含む直線は

k(y0 − y1)x0 + k(x1 − x0)y0 + k(x0y1 − x1y0) = 0

によって定まることがわかる。これは (∗)の定める直線に一致する。したがって、(x0, y0)と (x1, y1)を含む直線は一意的である。

注意 17.5 上の証明では直線を定める (∗)を天下りに与えた。F の元を成分に持つ行列式を利用するとこれは以下のように導くことができる。(x0, y0)と (x1, y1)を含む直線は存在するならば、その直線を定める

(∗∗) ax+ by + c = 0

の係数 a, b, cはax0 + by0 + c = 0, ax1 + by1 + c = 0

を満たす。さらに (∗∗)が定める直線の任意の点 (x, y)はもちろん (∗∗)を満たす。これら三つの等式

xa+ yb+ c = 0,

x0a+ y0b+ c = 0,

x1a+ y1b+ c = 0

を a, b, cに関する方程式と考えると、a, bの少なくとも一方は 0ではない解が存在することになり、 ∣∣∣∣∣∣∣

x y 1

x0 y0 1

x1 y1 1

∣∣∣∣∣∣∣ = 0

が成り立つ。この行列式を展開すると (∗)が現れる。

(2) pが lに含まれる場合、pを含み lと平行な直線は lだけである。そこで、pがlに含まれない場合を考える。ax+by+c = 0が lを定めているとする。p = (x0, y0)

とおくと、ax0 + by0 + c = 0が成り立つ。そこで、

ax+ by − ax0 − by0 = 0

27

Page 28: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

が定める直線を l0とする。定め方より l0は (x0, y0)を含む。さらに l0は lと交わらないことがわかる。次にαx+ βy+ γ = 0 が定める直線 l1も pを含み lと平行になるとする。これらの条件から、l1は l0に一致することがわかる。よって pを含み l

に平行な直線は一意的である。(3) 体F は加法の単位元 0と乗法の単位元 1を持ち、これらは異なる。アフィン平面の二点 (0, 0)と (0, 1)は、

1x+ 0y + 0 = 0

が定める直線に含まれる。(1)より、これら二点を含む直線は、この直線だけである。(1, 0)は上の直線には含まれない。したがって、三点 (0, 0), (0, 1), (1, 0)は一つの直線には含まれない。

18 アフィン平面の公理的扱い前節では、体からアフィン平面とそこでの直線を定め、そのアフィン平面の点と直線の性質を扱った。この節では前節の定理 17.4の性質を満たす集合の中の部分集合の集りについて考え、これを体上のアフィン平面の幾何学の一般化として扱う。

定義 18.1 集合Aの部分集合の集まりL(A)が次の条件を満たすとき、Aをアフィン平面と呼び、Aの各元を点、L(A)の各元をAの直線と呼ぶ。

(1) Aの異なる二点 p, qに対して、pと qを含む L(A)の元がただ一つ存在する。

(2) L(A)の元 lとAの点 pに対して、pを含み lと平行な L(A)の元がただ一つ存在する。(平行の定義は次の定義 18.2にある。)

(3) L(A)の一つの元に含まれないAの三点が存在する。

定義 18.2 アフィン平面の二つ直線が一致するかまたは交わらないとき、これら二つの直線は平行であるという。

定理 17.4より、体上のアフィン平面はこの節で定義したアフィン平面である。アフィン平面の直線やその平行性の定義についても矛盾はない。アフィン平面の異なる二点 p, qを含む直線はただ一つ存在するので、その直線を pqと書くことにする。

命題 18.3 アフィン平面の二つの直線について次のいずれか一つが成り立つ。

(1) 二つの直線は等しい。

(2) 二つの直線は一点で交わる。

28

Page 29: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

(3) 二つの直線は交わらない。

命題 18.4 アフィン平面の二つ直線が平行であるという関係は同値関係である。

命題 18.5 アフィン平面の一つの直線には含まれない 3点に対して、1点を付け加えその中のどの 3点も一つの直線には含まれないようにできる。

証明 一つの直線に含まれない三点を p, q, rとする。定義 18.1の (2)より pを含み直線 qrと平行な直線 lが存在する。同様に rを含み直線 pqに平行な直線mが存在する。このとき、lとmは平行ではないことがわかる。よって、lとmは一点 s

で交わる。さらに、p, q, r, sの中のどの 3点も一つの直線には含まれないことがわかる。

系 18.6 アフィン平面にはある 4点が存在して、その中のどの 3点も一つの直線には含まれない。

命題 18.7 アフィン平面のどの直線も二つ以上の点を含む。

証明 アフィン平面の任意の直線 lをとる。系 18.6の 4点を p, q, r, sとする。l

がこれらのうちの 2点を含めば証明は終わるので、p, q, r, sのうち高々1点を含む場合を考える。lが p, q, rを含まないと仮定してよい。p, q, rは一つの直線には含まれないので、pq, qr, rpのどの二つも平行ではない。よってこれらのうちで lと平行になるものは高々一つである。そこで、lと平行ではないものをm,nとする。l

とmの交点と lと nの交点は、lの異なる二点になり、lは二点を含む。

命題 18.8 一つのアフィン平面のどの二つの直線の間にも全単射が存在する。

証明 二つの直線を l,mとする。まず、l,mが平行な場合を考える。lとmが異なる場合を考えればよい。lの点 pとmの点 qをとる。直線 pqと lは平行ではない。同様に pqとmも平行ではない。lの点 xに対して xを含み直線 pqと平行な直線 nをとる。pqとmは平行ではないので、命題 18.4よりmと nも平行ではない。命題 18.3よりmと nは一点で交わる。この交点を ϕ(x)とすると、ϕは全単射であることがわかる。次に、l,mが平行ではない場合を考える。このときは、命題 18.3の (2)が成り立ち、l,mは一点で交わる。l,mの交点を rで表す。命題 18.7より lは r以外の点pを含み、mは r以外の点 qを含む。l,mが平行ではないことから、p, q, rは一つの直線には含まれない。lの点 xに対して xを含み直線 pqと平行な直線 nをとる。pqとmは平行ではないので、命題 18.4より nとmも平行ではない。命題 18.3より nとmは一点で交わる。この交点を ϕ(x)とする。これにより、写像 ϕ : l → m

が定まる。mの点に対して ϕの構成法と同様の議論を行えば、lの点が定まり ϕの逆写像を定めることがわかる。したがって、ϕは全単射である。

29

Page 30: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

定理 18.9 アフィン平面Aのどの点についても、その点を含む直線は二つ以上ある。さらに、Aの平行ではない二直線 l,mに対して、l ×mからAへの次の写像は全単射になる。l ×m ∋ (p, q)に対して、pを含みmと平行な直線mpと qを含み lと平行な直線 lqの交点を対応させる。

証明 アフィン平面の任意の点 aをとる。系 18.6よりある 4点が存在して、その中のどの 3点も一つの直線には含まれない。この 4点のうち一つは aに一致する可能性もあるが、aとは異なり一つの直線には含まれない 3点をとることができる。その 3点を p, q, rとする。定義 18.1の (1)より aを含む直線は一つは存在する。aを含む直線は一つしかないと仮定すると、ap, aq, arはすべて同じ直線になる。これは、p, q, rを含む直線がないことに反する。したがって、aを含む直線は二つ以上ある。l,mが平行ではないことから、mp, lqも平行ではない。よって、mp, lqは一点で交わる。この交点をΦ(p, q)で表す。(p′, q′) ∈ l ×mが Φ(p′, q′) = Φ(p, q)を満たすとする。mp,mp′ はともにmと平行でΦ(p′, q′) = Φ(p, q)を含む。これより、mp = mp′ が成り立ち、p = p′を得る。lq, lq′に関する同様の議論により、q = q′を得る。以上より (p′, q′) = (p, q)となり、写像Φは単射である。任意の x ∈ Aに対して、xを含み lと平行な直線 l′と xを含みmと平行な直線

m′をとる。l′は lと平行ではないので、l′はmと平行ではない。よって、l′はmとある一点 tで交わり、lt = l′となる。m′は lと平行ではないので、m′は lと平行ではない。よって、m′は lとある一点 sで交わり、ms = m′となる。したがって、

Φ(s, t) = ms ∩ lt = m′ ∩ l′ = {x}

となり、Φは全射であることがわかる。以上より、Φ : l×m → Aは全単射である。

19 有限アフィン平面定義 19.1 アフィン平面の直線が n個の点からなるとき、このアフィン平面を n

次アフィン平面と呼ぶ。命題 18.8より、n次アフィン平面のどの直線も n個の点からなる。

例 19.2 有限体F q上のアフィン平面の次数は qである。たとえば、直線

{(x, y) ∈ F 2q | 0 · x+ 1 · y = 0} = {(x, 0) | x ∈ F q}

の元の個数は |F q| = qであることからわかる。

定理 19.3 n次アフィン平面において以下が成り立つ。

30

Page 31: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

(1) すべての点の個数は n2である。

(2) 一本の直線と平行な直線のすべては n本ある。

(3) 一点を含む直線のすべては n+ 1本ある。

(4) 直線のすべては n(n+ 1)本である。

(5) 平行直線の同値類の個数は n+ 1である。

証明 (1) アフィン平面の次数の定義および定理 18.9よりわかる。(2) 一本の直線を lとする。定理 18.9より lと平行ではない直線mが存在し、l

と平行な直線とそのmとの交点は全単射に対応することがわかる。したがって、l

自身も含めて lと平行な直線のすべては n本である。(3) 一点を pとする。pと異なる点 qをとる。直線 pqに含まれない点 rが存在する。直線 qrは n個の点からなる。pを含む直線は qrと平行になるか、または qrと一点で交わる。平行な直線は一本であり、qrと一点で交わる直線はその交点で一意的に定まるので n本ある。したがって、pを含む直線のすべては n+ 1本ある。(4) アフィン平面の一点 pをとる。pを含む直線は (3)より n+1本である。pを含む各直線について、それと平行な直線の本数は (2)より n本である。pを含む異なる直線に平行な直線同士は平行にはならないので、特に等しくならない。したがって、pを含む直線に平行な直線は n(n+1)本ある。任意の直線に対して、この直線と平行であり pを含む直線が存在するので、この直線は上で数えた n(n + 1)

本の直線のいずれかに一致する。したがって、すべての直線の個数は n(n+ 1)である。(5) (4)より、直線の個数は n(n + 1)であり、(2)より平行直線の同値類の中には n本の直線があるので、平行直線の同値類の個数は n+ 1である。

例 19.4 (1) 有限体F q上のアフィン平面F 2qは |F 2

q| = |F q|2 = q2 となり、点の個数は q2である。(2) l0 = {(0, i) | i ∈ F q}は 1x + 0y = 0によって定まる直線である。l0と平行な直線のすべては j ∈ F qに対して 1x+ 0y = jによって定まる直線 {(j, i) | i ∈ F q}の q本である。(3) 一点 (0, 0)を含む直線は l0と、{(1, j) | j ∈ F q}の各点 (1, j)と (0, 0)を含む直線の p + 1本である。(1, j)と (0, 0)を含む直線は jx − y = 0によって定まる。これは {(i, ji) | i ∈ F q}と表現することもできる。(4) l0と平行な直線は各 k ∈ F q に対して 1x + 0y = kによって定まり、{(k, i) |i ∈ F q}と表現することもできる。各 j ∈ F qに対して (1, j)と (0, 0)を含む直線はjx−y = 0によって定まるので、これと平行な直線は各 k ∈ F qに対して jx−y = k

によって定まる。

31

Page 32: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

20 有限アフィン平面から魔方陣へAを n次アフィン平面とし、平行ではない二直線 l,mをとる。定理 18.9より、

l×m ∋ (p, q)に対して、pを含みmと平行な直線mpと qを含み lと平行な直線 lqの交点を対応させる写像は、l×mからAへの全単射になる。lの各点と{0, 1, . . . , n−1}の各点を対応させ、mの各点と {0, 1, . . . , n− 1}の各点を対応させることにより、{0, 1, . . . , n − 1}2 と l × mとの間に全単射対応を作れる。さらに定理 18.9の結果より、{0, 1, . . . , n − 1}2とAとの間に全単射対応を作れる。この全単射対応により Aを方陣とみなすことができる。平行直線の同値類の個数は n + 1なので、n ≥ 2ならば、l,mと平行ではない直線 sをとることができる。sと平行な直線をs0, s1, . . . , sn−1と番号付けする。すると、各 siは lと平行な直線と一点で交わり、mと平行な直線とも一点で交わる。したがって、直線 siの点に iを対応付けるとラテン方陣になる。さらに n ≥ 3ならば、l,m, sと平行ではない直線 tをとることができる。tと平行な直線を t0, t1, . . . , tn−1と番号付けすると、sと同様に tもラテン方陣を定める。さらに、siと tjも一点で交わる。したがって、sが定めるラテン方陣と tが定めるラテン方陣からオイラー方陣が定まり、さらに n次魔方陣が定まる。

21 実験計画法ある作物の収穫量に関する実験を次のように計画する。光量、温度、湿度、肥料それぞれ三つの条件 0, 1, 2において収穫する実験を行う。三つの光量の条件、三つの温度の条件、三つの湿度の条件、三つの肥料の条件それぞれを異なる組合せで実験を行うと、

34 = 81

通りの実験を行う必要がある。3次オイラー方陣

(1, 0) (2, 2) (0, 1)

(0, 2) (1, 1) (2, 0)

(2, 1) (0, 0) (1, 2)

を利用して実験の数を大幅に減らすことが可能になる。上記オイラー方陣の各行に光量の条件を対応させ、各列に温度の条件を対応させる。オイラー方陣の各成分の第一成分を湿度の条件、第二成分を肥料の条件に対応させる。これによって、9種類の実験を行う。たとえば、場所 (0, 0)に対応する実験は、第 0行であるため光量の条件は 0、第 0列であるため温度の条件は 0、オイラー方陣の成分は (1, 0)

であるため湿度の条件は 1、肥料の条件は 0である。

32

Page 33: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

オイラー方陣の各場所 (i, j)に対応する実験の作物の収穫量をCijで表す。このとき、光量の条件 0, 1, 2の収穫量は

C00 + C01 + C02

3,

C10 + C11 + C12

3,

C20 + C21 + C22

3

とみなせる。なぜなら、温度の条件は三種類の平均になっているため、これらの収穫量は温度に依存しない。また、湿度の条件も三種類の平均になっているため、これらの収穫量は湿度にも依存しない。さらに、肥料の条件も三種類の平均になっているため、これらの収穫量は肥料にも依存しない。したがって、上の三つの量を比較することで、0, 1, 2のどの光量の条件の収穫量が多いかがわかる。他の条件についても同様のことが成り立つ。以上の方法によって、少ない条件の組合せによって、各条件が作物の収穫にとってどれがよいのか調べることができる。

22 対戦相手組合せ問題3人で行うゲームを 9人の参加者で行うときの対戦相手の組合せを考える。すべての対戦の組合せを考えると (

9

3

)=

9 · 8 · 73!

= 84

通りになる。F 3上のアフィン平面F 2

3の直線を利用して、任意の二人が必ず対戦する組合せは数を減らすことができる。F 2

3の各点を 9人の参加者に対応させる。3人の対戦はF 2

3の 3点部分集合を考えることになる。F 23の直線も対戦と考えることができ

る。F 23の直線の全体は、12本の直線からなる。任意の二点を含む直線が存在する

ことは、直線全体が定める対戦の組合せでは任意の二人が対戦することに対応する。12は上の 84よりは小さい。平行直線は 3本からなり、ゲームの会場が 3会場あれば平行直線に対応するゲームを同時に行える。これを平行直線の同値類の個数である 4回行えば、12回のすべてのゲームを行うことができる。上記の議論は班分けの問題に適用することもできる。9人を 3人の三つの班に分け、どの二人も同じ班になることがあるようにするには、3人の三つの班を 3本の平行直線に対応させると、4回班分けを行えば達成できる。4人で行うゲームを 16人の参加者で行うときの対戦相手の組合せを考える。すべての対戦の組合せを考えると(

16

4

)=

16 · 15 · 14 · 134!

= 1820

通りになる。

33

Page 34: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

F 4上のアフィン平面F 24の直線を利用して、任意の二人が必ず対戦する組合せ

は数を減らすことができる。F 24の各点を 16人の参加者に対応させる。4人の対戦

はF 24の 4点部分集合を考えることになる。F 2

4の直線も対戦と考えることができる。F 2

4の直線の全体は、20本の直線からなる。任意の二点を含む直線が存在することは、直線全体が定める対戦の組合せでは任意の二人が対戦することに対応する。平行直線は 4本からなり、ゲームの会場が 4会場あれば平行直線に対応するゲームを同時に行える。これを平行直線の同値類の個数である 5回行えば、20回のすべてのゲームを行うことができる。上記の議論も班分けの問題に適用することもできる。16人を 4人の四つの班に分け、どの二人も同じ班になることがあるようにするには、4人の四つの班を 4本の平行直線に対応させると、5回班分けを行えば達成できる。

23 一次関数から立体方陣へこの節では整数の剰余環または有限体の一次関数から立体ラテン方陣、立体オイラー方陣、さらに立体魔方陣を構成する方法について解説する。n3個の立方体を n× n× nの形に立方体に並べたものを n次立体方陣と呼ぶ。0

から n3 − 1までの整数をもれなく重複なく n次立体方陣の一つ一つの立方体に入れ、どの横の行の和もどの縦の列の和もどの垂直の列の和も等しいとき、この n

次立体方陣を n次立体魔方陣と呼ぶ。0から n− 1までの整数を n次立体方陣の一つ一つの立方体に入れ、どの横の行にも 0からn−1までの整数がもれなく重複なくあり、どの縦の列にも 0からn−1

までの整数がもれなく重複なくあり、どの垂直の列にも 0から n− 1までの整数がもれなく重複なくあるとき、この n次立体方陣を n次立体ラテン方陣と呼ぶ。n次立体方陣の i行目、j列目、垂直の列の k番目の立方体を座標 (i, j, k)で表す。

n次立体方陣に数を入れたものAの座標 (i, j, k)の数が aijkであるとき、A = (aijk)

で表す。三つの n次立体ラテン方陣A = (aijk), B = (bijk), C = (cijk)に対して、(aijk, bijk, cijk)のすべてが互いに異なるとき、(aijk, bijk, cijk)から定まる n次立体方陣を n次立体オイラー方陣と呼ぶ。n次立体オイラー方陣の数の組 (a, b, c)を 3桁の n進法の表記 abcに直すと、結果は n立体魔方陣になることがわかる。どの行、どの列、どの垂直の列でも 1桁目の数は 0から n− 1までの整数が 1回ずつ現れるので、1桁目の数の和は等しい。2桁目と 3桁目の数の和についても同様にどの行、どの列、どの垂直の列でも数の和は等しい。したがって、この n進法の表記による立体方陣は立体魔方陣になることがわかる。整数の剰余環や有限体の一次関数から立体ラテン方陣、立体オイラー方陣、さらに立体魔方陣を構成する方法を述べる。Rを剰余環または有限体とし (より一般

34

Page 35: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

的に有限可換環でもよい)、Rの元の個数をnとする。{0, 1, . . . , n−1}とRの間に全単射対応を定めておく。するとR3は立体方陣とみなすことができる。ai, b ∈ R

とする。(x1, x2, x3) ∈ R3に

a1x1 + a2x2 + a3x3 + b

を対応させたときに、これが n次立体ラテン方陣になるための必要十分条件は、a1, a2, a3がRにおいて積の逆元を持つことである。aij, bi ∈ Rとする。対応x1

x2

x3

7→

a11 a12 a13a21 a22 a23a31 a32 a33

x1

x2

x3

+

b1b2b3

が n次立体オイラー方陣を定めるための必要十分条件は、aijがRにおいて積の逆元を持ち、行列式 ∣∣∣∣∣∣∣

a11 a12 a13a21 a22 a23a31 a32 a33

∣∣∣∣∣∣∣もRにおいて積の逆元を持つことである。この条件が満たされるとき、n次立体オイラー方陣、さらに、n次立体魔方陣を作ることができる。F 3の場合に具体的に立体魔方陣を構成する。a11 a12 a13

a21 a22 a23a31 a32 a33

=

2 1 1

1 2 1

1 1 2

,

b1b2b3

=

000

とおく。 ∣∣∣∣∣∣∣

2 1 1

1 2 1

1 1 2

∣∣∣∣∣∣∣ = 23 + 1 + 1− 2− 2− 2 = 1

となりは条件を満たしているので、これらから 3次立体オイラー方陣が定まる。この 3次立体オイラー方陣の垂直列 0、垂直列 1、垂直列 2は次のようになる。垂直列 0の三つのラテン方陣は、x2 = 0として 2x1 + x2, x1 + 2x2, x1 + x2の定めるラテン方陣であり、

0 1 2

2 0 1

1 2 0

0 2 1

1 0 2

2 1 0

0 1 2

1 2 0

2 0 1

これらから定まる立体オイラー方陣の垂直列 0の部分は

000 121 212

211 002 120

122 210 001

35

Page 36: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

垂直列 1の三つのラテン方陣は、x2 = 1として 2x1+x2+1, x1+2x2+1, x1+x2+2

の定めるラテン方陣であり、

1 2 0

0 1 2

2 0 1

1 0 2

2 1 0

0 2 1

2 0 1

0 1 2

1 2 0

これらから定まる立体オイラー方陣の垂直列 1の部分は

112 200 021

020 111 202

201 022 110

垂直列 2の三つのラテン方陣は、x2 = 2として 2x1+x2+2, x1+2x2+2, x1+x2+1

の定めるラテン方陣であり、

2 0 1

1 2 0

0 1 2

2 1 0

0 2 1

1 0 2

1 2 0

2 0 1

0 1 2

これらから定まる立体オイラー方陣の垂直列 2の部分は

221 012 100

102 220 011

010 101 222

改めてこの立体オイラー方陣の垂直列 0, 1, 2の部分を並べると次のようになる。

000 121 212

211 002 120

122 210 001

112 200 021

020 111 202

201 022 110

221 012 100

102 220 011

010 101 222

これは立体魔方陣の 3進法表記とみることもできる。10進法表記に直すと次のようになる。

0 16 23

22 2 15

17 21 1

14 18 7

6 13 20

19 8 12

25 5 9

11 24 4

3 10 26

F 4の場合に具体的に立体魔方陣を構成する。F 4の元は11節で定めた{0, 1, α, β}で表す。 a11 a12 a13

a21 a22 a23a31 a32 a33

=

α 1 1

1 α 1

1 1 α

,

b1b2b3

=

000

36

Page 37: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

とおく。 ∣∣∣∣∣∣∣α 1 1

1 α 1

1 1 α

∣∣∣∣∣∣∣ = α3 + 1 + 1− α− α− α = β

となりは条件を満たしているので、これらから 4次立体オイラー方陣が定まる。F 4

の元は 0, 1, α, βの順序で 0, 1, 2, 3と対応付けて方陣を考えることにする。この 4次立体オイラー方陣の垂直列 0、垂直列 1、垂直列 α、垂直列 βは次のようになる。垂直列 0の三つのラテン方陣は、x3 = 0としてαx1 + x2, x1 +αx2, x1 + x2の定めるラテン方陣であり、

0 1 α β

α β 0 1

β α 1 0

1 0 β α

0 α β 1

1 β α 0

α 0 1 β

β 1 0 α

0 1 α β

1 0 β α

α β 0 1

β α 1 0

これらから定まる立体オイラー方陣の垂直列 0の部分は

000 1α1 αβα β1β

α11 ββ0 0αβ 10α

βαα α0β 110 0β1

1ββ 01α β01 αα0

成分を対応する 0, 1, 2, 3に置き換えると

000 121 232 313

211 330 023 102

322 203 110 031

133 012 301 220

垂直列1の三つのラテン方陣は、x3 = 1としてαx1+x2+1, x1+αx2+1, x1+x2+α

の定めるラテン方陣であり、

1 0 β α

β α 1 0

α β 0 1

0 1 α β

1 β α 0

0 α β 1

β 1 0 α

α 0 1 β

α β 0 1

β α 1 0

0 1 α β

1 0 β α

これらから定まる立体オイラー方陣の垂直列 1の部分は

11α 0ββ βα0 α01

β0β ααα 1β1 010

αβ0 β11 00α 1αβ

0α1 100 α1β ββα

37

Page 38: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

成分を対応する 0, 1, 2, 3に置き換えると

112 033 320 201

303 222 131 010

230 311 002 123

021 100 213 332

垂直列αの三つのラテン方陣は、x3 = αとしてαx1+x2+α, x1+αx2+α, x1+x2+β

の定めるラテン方陣であり、

α β 0 1

0 1 α β

1 0 β α

β α 1 0

α 0 1 β

β 1 0 α

0 α β 1

1 β α 0

β α 1 0

α β 0 1

1 0 β α

0 1 α β

これらから定まる立体オイラー方陣の垂直列 αの部分は

ααβ β0α 011 1β0

0βα 11β α00 βα1

101 0α0 βββ α1α

β10 αβ1 1αα 00β

成分を対応する 0, 1, 2, 3に置き換えると

223 302 011 130

032 113 200 321

101 020 333 212

310 231 122 003

垂直列βの三つのラテン方陣は、x3 = βとしてαx1+x2+β, x1+αx2+β, x1+x2+1

の定めるラテン方陣であり、

β α 1 0

1 0 β α

0 1 α β

α β 0 1

β 1 0 α

α 0 1 β

1 β α 0

0 α β 1

1 0 β α

0 1 α β

β α 1 0

α β 0 1

これらから定まる立体オイラー方陣の垂直列 βの部分は

ββ1 α10 10β 0αα

1α0 001 β1α αββ

01β 1βα αα1 β00

α0α βαβ 0β0 111

38

Page 39: ラテン方陣 - 筑波大学となっていて、一部のi行j 列の成分はi+j になっている。 数値が左の方陣と一致するために、計算結果を3で割った余りを対応させる。余

成分を対応する 0, 1, 2, 3に置き換えると

331 210 103 022

120 001 312 233

013 132 221 300

202 323 030 111

改めてこの立体オイラー方陣の垂直列 0, 1, α, βの部分を並べると次のようになる。

000 121 232 313

211 330 023 102

322 203 110 031

133 012 301 220

112 033 320 201

303 222 131 010

230 311 002 123

021 100 213 332

223 302 011 130

032 113 200 321

101 020 333 212

310 231 122 003

331 210 103 022

120 001 312 233

013 132 221 300

202 323 030 111

これは立体魔方陣の 4進法表記とみることもできる。10進法表記に直すと次のようになる。

0 25 46 55

37 60 11 18

58 35 20 13

31 6 49 40

22 15 56 33

51 42 29 4

44 53 2 27

9 16 39 62

43 50 5 28

14 23 32 57

17 8 63 38

52 45 26 3

61 36 19 10

24 1 54 47

7 30 41 48

34 59 12 21

39