魔方陣
魔方陣(まほうじん、英:magic square)とは、n×n 個の正方形の方陣に数字を配置し、縦・横・対角線のいずれの列についても、その列の数字の合計が同じになるもののことである。特に1から方陣のマスの総数 n2 までの数字を1つずつ過不足なく使ったものを言う。
このときの一列の和は、
\frac{1}{n}\sum^{n^2}_{i=1} i = \frac{n(n^2+1)}{2}
と計算できる。
魔方陣の歴史は古く、中国では紀元前190年前には存在していた。魔法や神話的な意味を獲得し、芸術作品の象徴として様々な場所で用いられてきた。
現代では縦・横・対角線以外の形状の和や、数字の積などの単なる和以外の演算などにも一般化されている。
1×1の魔方陣は明らかである。
\begin{bmatrix}
1\\
\end{bmatrix}
2×2の魔方陣は同じ数字を使用しない限り存在しない。
<証明>
\begin{bmatrix}
a & d \\
b & c \\
\end{bmatrix}
a+b=a+c=a+d
b=c=d
したがって3×3のものが意味のあると思われる最小の魔方陣になる。
3×3の魔方陣(三方陣)は、対称形を除けば下記の形しか存在しない。各列の合計は15になる。
\begin{bmatrix}
8 & 1 & 6 \\
3 & 5 & 7 \\
4 & 9 & 2 \\
\end{bmatrix}
三方陣の暗記法として、
「憎し(294)と思えば、七五三(753)、六一坊主に蜂(618)が刺す」
「憎し(294)と思えば、七五三(753)、六一八(618)はみな同じ」
「フクシ(294)マの、七五三(753)は、ロイヤ(618)ルホテルで」
などが知られている。
九星などで用いられる「河図洛書」(洛書)の図は次のとおりであり、上の図の対称形になっている。
また西洋数秘術のサトゥルヌス魔方陣(土星魔方陣)は次の図のとおりである。
4×4の魔方陣は全部で880通り存在する。4×4の魔方陣では、1行と4行を交換し、さらに1列と4列を交換すると別の4×4の魔方陣ができる。同様にして、2行と3行、2列と3列を交換するとまた別の4×4の魔方陣ができる。1行と2行、3行と4行、1列と2列、3列と4列を交換すると外枠の四角と内枠の四角が交換された別の4×4の魔方陣ができる。右の図は、アルブレヒト・デューラーが描いたメランコリアIの中にある魔方陣を拡大したものである。
一例を示す。
\begin{bmatrix}
1 &  2 & 15 & 16 \\
13 & 14 &  3 &  4 \\
12 &  7 & 10 &  5 \\
8 & 11 &  6 &  9 \\
\end{bmatrix}
1970年代から2億7530万5224通り(対称形などをのぞく)存在することが知られている。
一例を示す。
\begin{bmatrix}
11 & 24 &  7 & 20 &  3 \\
4 & 12 & 25 &  8 & 16 \\
17 &  5 & 13 & 21 &  9 \\
10 & 18 &  1 & 14 & 22 \\
23 &  6 & 19 &  2 & 15
\end{bmatrix}
6×6の魔方陣は、一般的な作り方は知られていないため、いろいろな人物が独自の方陣を発表している。一例として久留島喜内による魔方陣をあげる。
\begin{bmatrix}
1 &  2 &  3 & 34 & 35 & 36 \\
31 & 32 & 15 &  4 & 23 &  6 \\
30 & 29 & 28 &  9 &  8 &  7 \\
12 & 11 & 10 & 27 & 26 & 25 \\
24 & 20 & 22 & 21 &  5 & 19 \\
13 & 17 & 33 & 16 & 14 & 18
\end{bmatrix}
9×9=81。中心が41で、縦・横・対角線の和がすべて369。中国の程大位の『算法統宗』(1593年)第12巻には4 - 10次方陣までが説かれており、9次方陣の「九九図」も載っているという(実際の図は丸囲みの漢数字で枠なしだが下図では便宜上変更)。
3次方陣に関連した法則も見られる。計81の数字を9つ(3×3)のブロックに分けて考えた場合、例えば上中のブロックはすべて9の倍数になっている。
\begin{bmatrix}
9x+4 & 9x+9 & 9x+2 \\
9x+3 & 9x+5 & 9x+7 \\
9x+8 & 9x+1 & 9x+6 \\
\end{bmatrix}
27×27の魔方陣も可能。27×27=729。中心が365で、縦・横・対角線の和がすべて9855。
上記の「九九図のブロックごとの座標置換」を丸ごと、下中のブロックに配置。82以降の数を同様の法則で配置していく。それぞれのブロックも魔方陣になっており、中心の数の下一桁は、そのブロックの順序(下図の漢数字)と一致している(ブロックごとに81ずつ数が増える関係)。
奇数次の魔方陣の一般的な作り方はいくつか存在する。どの方法を用いても 3×3 の魔方陣は同じ配列になる。
右上に次の数字を置いていく(最上段の上は最下段になる。下の図を参照。)
後は3,4の繰り返しで完成
例:7×7
\begin{bmatrix}
- & - & - & 1 & - & - & - \\
- & - & - & - & - & - & - \\
- & - & - & - & - & - & - \\
- & - & - & - & - & - & - \\
- & - & - & - & - & - & - \\
- & - & - & - & - & - & - \\
- & - & - & - & - & - & - \\
\end{bmatrix}
\begin{bmatrix}
- & - & - & 1 & - & - & - \\
- & - & 7 & - & - & - & - \\
- & 6 & - & - & - & - & - \\
5 & - & - & - & - & - & - \\
- & - & - & - & - & - & 4 \\
- & - & - & - & - & 3 & - \\
- & - & - & - & 2 & - & - \\
\end{bmatrix}
\begin{bmatrix}
- & - & - & 1 & - & - & - \\
- & - & 7 & - & - & - & - \\
- & 6 & 8 & - & - & - & - \\
5 & - & - & - & - & - & - \\
- & - & - & - & - & - & 4 \\
- & - & - & - & - & 3 & - \\
- & - & - & - & 2 & - & - \\
\end{bmatrix}
\begin{bmatrix}
- & - & - & 1 & 10 & - & - \\
- & - & 7 & 9 & - & - & - \\
- & 6 & 8 & - & - & - & - \\
5 & 14 & - & - & - & - & - \\
13 & - & - & - & - & - & 4 \\
- & - & - & - & - & 3 & 12 \\
- & - & - & - & 2 & 11 & - \\
\end{bmatrix}
\begin{bmatrix}
30 & 39 & 48 & 1 & 10 & 19 & 28 \\
38 & 47 & 7 & 9 & 18 & 27 & 29 \\
46 & 6 & 8 & 17 & 26 & 35 & 37 \\
5 & 14 & 16 & 25 & 34 & 36 & 45 \\
13 & 15 & 24 & 33 & 42 & 44 & 4 \\
21 & 23 & 32 & 41 & 43 & 3 & 12 \\
22 & 31 & 40 & 49 & 2 & 11 & 20 \\
\end{bmatrix}
下段の中央を1にしたり、左斜めに進める方法もあるが、これらは対称形なのですべて同じ方法。
下図で、A,B,C,D,E には 1,2,3,4,5 を F,G,H,I,J には 0,5,10,15,20を、任意の順に割り当てることで、魔方陣が作れる。
(先にAに3、Fに10を割り当て済みのパターンでは、 残り4種類の数字の配置が自由)
\begin{bmatrix}
A & B & C & D & E \\
C & D & E & A & B \\
E & A & B & C & D \\
B & C & D & E & A \\
D & E & A & B & C \\
\end{bmatrix}
+
\begin{bmatrix}
F & G & H & I & J \\
I & J & F & G & H \\
G & H & I & J & F \\
J & F & G & H & I \\
H & I & J & F & G \\
\end{bmatrix}
\begin{bmatrix}
B & C & D & E & 3 \\
C & D & E & 3 & B \\
D & E & 3 & B & C \\
E & 3 & B & C & D \\
3 & B & C & D & E \\
\end{bmatrix}
+
\begin{bmatrix}
10 & G & H & I & J \\
J & 10 & G & H & I \\
I & J & 10 & G & H \\
H & I & J & 10 & G \\
G & H & I & J & 10 \\
\end{bmatrix}
\begin{bmatrix}
A & B & C & D & E \\
C & D & E & A & B \\
E & A & B & C & D \\
B & C & D & E & A \\
D & E & A & B & C \\
\end{bmatrix}
+
\begin{bmatrix}
10 & G & H & I & J \\
J & 10 & G & H & I \\
I & J & 10 & G & H \\
H & I & J & 10 & G \\
G & H & I & J & 10 \\
\end{bmatrix}
\begin{bmatrix}
3 & B & C & D & E \\
E & 3 & B & C & D \\
D & E & 3 & B & C \\
C & D & E & 3 & B \\
B & C & D & E & 3 \\
\end{bmatrix}
+
\begin{bmatrix}
F & G & H & I & J \\
H & I & J & F & G \\
J & F & G & H & I \\
G & H & I & J & F \\
I & J & F & G & H \\
\end{bmatrix}
4×4のブロックに区切り、対角線をイメージする
左上から右へ、1から順々に数え上げ、「対角線にあたる」ところだけに数字を置く
右下から左へ、1から順々に数え上げ、「対角線にあたらない」ところだけに数字を置く
例 : 8×8
\begin{bmatrix}
\diagdown & - & - & \diagup & \diagdown & - & - & \diagup \\
- & \diagdown & \diagup & - & - & \diagdown & \diagup & - \\
- & \diagup & \diagdown & - & - & \diagup & \diagdown & - \\
\diagup & - & - & \diagdown & \diagup & - & - & \diagdown \\
\diagdown & - & - & \diagup & \diagdown & - & - & \diagup \\
- & \diagdown & \diagup & - & - & \diagdown & \diagup & - \\
- & \diagup & \diagdown & - & - & \diagup & \diagdown & - \\
\diagup & - & - & \diagdown & \diagup & - & - & \diagdown \\
\end{bmatrix}
\begin{bmatrix}
1 &  - &  - &  4 &  5 &  - &  - &  8 \\
- & 10 & 11 &  - &  - & 14 & 15 &  - \\
- & 18 & 19 &  - &  - & 22 & 23 &  - \\
25 &  - &  - & 28 & 29 &  - &  - & 32 \\
33 &  - &  - & 36 & 37 &  - &  - & 40 \\
- & 42 & 43 &  - &  - & 46 & 47 &  - \\
- & 50 & 51 &  - &  - & 54 & 55 &  - \\
57 &  - &  - & 60 & 61 &  - &  - & 64 \\
\end{bmatrix}
\begin{bmatrix}
\diagdown & 63 & 62 & \diagup & \diagdown & 59 & 58 & \diagup \\
56 & \diagdown & \diagup & 53 & 52 & \diagdown & \diagup & 49 \\
48 & \diagup & \diagdown & 45 & 44 & \diagup & \diagdown & 41 \\
\diagup & 39 & 38 & \diagdown & \diagup & 35 & 34 & \diagdown \\
\diagdown & 31 & 30 & \diagup & \diagdown & 27 & 26 & \diagup \\
24 & \diagdown & \diagup & 21 & 20 & \diagdown & \diagup & 17 \\
16 & \diagup & \diagdown & 13 & 12 & \diagup & \diagdown &  9 \\
\diagup &  7 &  6 & \diagdown & \diagup &  3 &  2 & \diagdown \\
\end{bmatrix}
\begin{bmatrix}
1 & 63 & 62 &  4 &  5 & 59 & 58 &  8 \\
56 & 10 & 11 & 53 & 52 & 14 & 15 & 49 \\
48 & 18 & 19 & 45 & 44 & 22 & 23 & 41 \\
25 & 39 & 38 & 28 & 29 & 35 & 34 & 32 \\
33 & 31 & 30 & 36 & 37 & 27 & 26 & 40 \\
24 & 42 & 43 & 21 & 20 & 46 & 47 & 17 \\
16 & 50 & 51 & 13 & 12 & 54 & 55 &  9 \\
57 &  7 &  6 & 60 & 61 &  3 &  2 & 64 \\
\end{bmatrix}
例 : 4×4
\begin{bmatrix}
\diagdown & - & - & \diagup \\
- & \diagdown & \diagup & - \\
- & \diagup & \diagdown & - \\
\diagup & - & - & \diagdown \\
\end{bmatrix}
\begin{bmatrix}
1 &  - &  - &  4 \\
- &  6 &  7 &  - \\
- & 10 & 11 &  - \\
13 &  - &  - & 16 \\
\end{bmatrix}
\begin{bmatrix}
\diagdown & 15 & 14 & \diagup \\
12 & \diagdown & \diagup & 9 \\
8 & \diagup & \diagdown & 5 \\
\diagup & 3 & 2 & \diagdown \\
\end{bmatrix}
\begin{bmatrix}
1 & 15 & 14 &  4 \\
12 &  6 &  7 &  9 \\
8 & 10 & 11 &  5 \\
13 &  3 &  2 & 16 \\
\end{bmatrix}
0と1とを同数だけ要素とした4x4方陣にて 縦・横・対角上の和が一致する組み合わせは、下記のABCDE5通り。
これらを下記のように組合せて 2進数4桁の各位に割り当てれば、0から15までの数からなる4方陣が作れる。さらに全体に1ずつ加算することで、普通の1から16までの数からなる魔方陣が得られる。
A=
\begin{bmatrix}
1 & 1 & 0 & 0 \\
0 & 0 & 1 & 1 \\
1 & 1 & 0 & 0 \\
0 & 0 & 1 & 1 \\
\end{bmatrix}
,B=
\begin{bmatrix}
1 & 0 & 1 & 0 \\
0 & 1 & 0 & 1 \\
0 & 1 & 0 & 1 \\
1 & 0 & 1 & 0 \\
\end{bmatrix}
,C=
\begin{bmatrix}
1 & 1 & 0 & 0 \\
0 & 0 & 1 & 1 \\
0 & 0 & 1 & 1 \\
1 & 1 & 0 & 0 \\
\end{bmatrix}
,D=
\begin{bmatrix}
1 & 1 & 0 & 0 \\
1 & 0 & 1 & 0 \\
0 & 1 & 0 & 1 \\
0 & 0 & 1 & 1 \\
\end{bmatrix}
,E=
\begin{bmatrix}
0 & 1 & 0 & 1 \\
1 & 1 & 0 & 0 \\
0 & 0 & 1 & 1 \\
1 & 0 & 1 & 0 \\
\end{bmatrix}
All1=
\begin{bmatrix}
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
\end{bmatrix}
Sample: 8*A + 4*B + 2*A' + B' + All1
\begin{bmatrix}
8 & 8 & 0 & 0 \\
0 & 0 & 8 & 8 \\
8 & 8 & 0 & 0 \\
0 & 0 & 8 & 8 \\
\end{bmatrix}
+
\begin{bmatrix}
4 & 0 & 4 & 0 \\
0 & 4 & 0 & 4 \\
0 & 4 & 0 & 4 \\
4 & 0 & 4 & 0 \\
\end{bmatrix}
+
\begin{bmatrix}
2 & 0 & 2 & 0 \\
2 & 0 & 2 & 0 \\
0 & 2 & 0 & 2 \\
0 & 2 & 0 & 2 \\
\end{bmatrix}
+
\begin{bmatrix}
1 & 0 & 0 & 1 \\
0 & 1 & 1 & 0 \\
1 & 0 & 0 & 1 \\
0 & 1 & 1 & 0 \\
\end{bmatrix}
+
\begin{bmatrix}
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 \\
\end{bmatrix}
\begin{bmatrix}
8+4+2+1+1 & 8+0+0+0+1 & 0+4+2+0+1 & 0+0+0+1+1 \\
0+0+2+0+1 & 0+4+0+1+1 & 8+0+2+1+1 & 8+4+0+0+1 \\
8+0+0+1+1 & 8+4+2+0+1 & 0+0+0+0+1 & 0+4+2+1+1 \\
0+4+0+0+1 & 0+0+2+1+1 & 8+4+0+1+1 & 8+0+2+0+1 \\
\end{bmatrix}
\begin{bmatrix}
16 & 9 & 7 & 2 \\
3 & 6 & 12 & 13 \\
10 & 15 & 1 & 8 \\
5 & 4 & 14 & 11 \\
\end{bmatrix}
4x4魔方陣は880通りあることが知られており、上記の方法にてその6割にあたる528通りを作れる。
特に、AとBとだけを向きを変えて4通り組み合わせることで汎対角方向の数の和も一致する完全魔方陣48種類を作れる。
LUX法は、ジョン・ホートン・コンウェイによって考案された (4n+2)×(4n+2) の魔方陣を作る方法である。
元となる (2n+1)×(2n+1) の魔方陣を用意して、それぞれの値から1を引いて4倍する。
\begin{bmatrix}
64 & 92 & 0 & 28 & 56 \\
88 & 16 & 24 & 52 & 60 \\
12 & 20 & 48 & 76 & 84 \\
36 & 44 & 72 & 80 & 8 \\
40 & 68 & 96 & 4 & 32 \\
\end{bmatrix}
(2n+1)×(2n+1)の行列を作り、ど真ん中の行の1つ下の行をU、その上の n+1行をL、下の n-1行を X とする。その後中央の L とその下の U を入れ替える。
n=1の場合、
\begin{bmatrix}
L & L & L \\
L & U & L \\
U & L & U \\
\end{bmatrix}
n=3の場合、
\begin{bmatrix}
L & L & L & L & L & L & L \\
L & L & L & L & L & L & L \\
L & L & L & L & L & L & L \\
L & L & L & U & L & L & L \\
U & U & U & L & U & U & U \\
X & X & X & X & X & X & X \\
X & X & X & X & X & X & X \\
\end{bmatrix}
n=0の場合は定義できない。
n=2の場合、
\begin{bmatrix}
L & L & L & L & L \\
L & L & L & L & L \\
L & L & U & L & L \\
U & U & L & U & U \\
X & X & X & X & X \\
\end{bmatrix}
この行列と元の魔方陣を加えたものを作る。
\begin{bmatrix}
64+L & 92+L & 0+L & 28+L & 56+L \\
88+L & 16+L & 24+L & 52+L & 60+L \\
12+L & 20+L & 48+U & 76+L & 84+L \\
36+U & 44+U & 72+L & 80+U & 8+U \\
40+X & 68+X & 96+X & 4+X & 32+X \\
\end{bmatrix}
L =
\begin{bmatrix}
4 & 1 \\
2 & 3 \\
\end{bmatrix}
U =
\begin{bmatrix}
1 & 4 \\
2 & 3 \\
\end{bmatrix}
X =
\begin{bmatrix}
1 & 4 \\
3 & 2 \\
\end{bmatrix}
を代入すると、求める大きさの魔方陣が完成する。
\begin{bmatrix}
68 & 65 & 96 & 93 & 4 & 1 & 32 & 29 & 60 & 57 \\
66 & 67 & 94 & 95 & 2 & 3 & 30 & 31 & 58 & 59 \\
92 & 89 & 20 & 17 & 28 & 25 & 56 & 53 & 64 & 61 \\
90 & 91 & 18 & 19 & 26 & 27 & 54 & 55 & 62 & 63 \\
16 & 13 & 24 & 21 & 49 & 52 & 80 & 77 & 88 & 85 \\
14 & 15 & 22 & 23 & 50 & 51 & 78 & 79 & 86 & 87 \\
37 & 40 & 45 & 48 & 76 & 73 & 81 & 84 & 9 & 12 \\
38 & 39 & 46 & 47 & 74 & 75 & 82 & 83 & 10 & 11 \\
41 & 44 & 69 & 72 & 97 & 100 & 5 & 8 & 33 & 36 \\
43 & 42 & 71 & 70 & 99 & 98 & 7 & 6 & 35 & 34 \\
\end{bmatrix}
既知の n×n の魔方陣の周りに数字を配置し、(n+2)×(n+2)の魔方陣を作ることができる。この方法は関孝和が1683年に発表している。この方法で作られた方陣は、自動的に親子方陣となる。
偶数次・奇数次のどちらでもこの方法は使用できるが、奇数次・4の倍数次・4の倍数でない偶数次のいずれかで、配置の方法は異なってくる。
西洋数秘術のユピテル魔方陣(木星魔方陣)は次の図のとおりである。各ラインの和は34(女性数の最初2と男性素数17(ピタゴラス学派では不幸とする)の積)になっている。縦、横、斜めのいずれの列も和が等しくなるように数字を並べたばかりでなく、右上の四マス(右下、左上、左下それぞれの四マスも同様)、中央2列の端の四マス、中央2行の端の四マス、中央の四マスや隅の四マスまでひとつ残らず和が34になっている。
\begin{bmatrix}
4 & 14 & 15 & 1 \\
9 & 7 & 6 & 12 \\
5 & 11 & 10 & 8 \\
16 & 2 & 3 & 13 \\
\end{bmatrix}
アルブレヒト・デューラーの『メランコリア1』という作品には砂時計隣に4×4の次の図のユピテル魔方陣が描かれている。この魔方陣の中には、偉業を達成した制作年の1514が埋め込まれている。
\begin{bmatrix}
16 & 3 & 2 & 13 \\
5 & 10 & 11 & 8 \\
9 & 6 & 7 & 12 \\
4 & 15 & 14 & 1
\end{bmatrix}
斜め方向の和が、対角線以外でも等しくなるような物を完全方陣または汎魔方陣と呼ぶ。
一辺nが4以上でかつ n≠4k+2 の時、完全方陣が作成可能である。
例:
\begin{bmatrix}
6 & 12 & 7 & 9 \\
15 & 1 & 14 & 4 \\
10 & 8 & 11 & 5 \\
3 & 13 & 2 & 16
\end{bmatrix}
この図において斜めの和を見ると、
6+1+11+16 = 12+14+5+3 = 7+4+10+13 = 9+15+8+2 = 34
9+14+8+3 = 7+1+10+16 = 12+15+5+2 = 6+4+11+13 = 34
が成り立っている。
その他、「四隅(上図では6+9+3+16)」の合計が34になる。
さらに、「任意の2×2の固まり」も、34になる(「カド」と「中央」の2×2の固まりの合計は、どんな4×4の魔方陣でも必ず34になる))。
ペントミノ(T型)の5つの数字の合計が34になるものもある。
また、任意の「斜めの一つ置き」の和は、17になる。上の図では
6+11、12+5、15+2、1+16、7+10、9+8、14+3、4+13の8組
すべての数を2乗しても、縦・横の和が一定になる物を多重魔方陣(multimagic square)と呼ぶ。
例:
\begin{bmatrix}
16 & 41 & 36 & 5 & 27 & 62 & 55 & 18 \\
26 & 63 & 54 & 19 & 13 & 44 & 33 & 8 \\