English   Japanese
Home   Site Map   Top   Prev.   3-D ( 1   2   3   4   5 )   4-D ( 1   2   3   4   5   6 )

全汎斜四次元方陣の作成アルゴリズム

[16の倍数次] [奇数次]

1. 16の倍数次

 偶数次の全汎斜四次元方陣は,次数が16の倍数の場合に限って存在する.このとき,次数が32次以上の場合は,対称全汎斜四次元方陣(4-相結または非4-相結)が存在する.

1.1 非対称な全汎斜方陣(完備・4-相結) (m = 16x)

求める全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.なお,この方法で作られる方陣は完備かつ4-相結になる.
aijkh = Tm(bijkh) m3 + Tm(cijkh) m2 + Tm(dijkh) m + Tm(eijkh) + 1,

ここで
bijkh ≡ i + (m/8)j + (m/4)k + (m/2)h   (mod. m),   0≦bijkh<m,
cijkh ≡ (m/2)i + j + (m/8)k + (m/4)h   (mod. m),   0≦cijkh<m,
dijkh ≡ (m/4)i + (m/2)j + k + (m/8)h   (mod. m),   0≦dijkh<m,
eijkh ≡ (m/8)i + (m/4)j + (m/2)k + h   (mod. m),   0≦eijkh<m,
Tm(x) = x (x<m/2 のとき), 3m/2-1-x (その他)    (体汎斜立体方陣のものと同一).

この方陣は,XmlHypercube formatAale de Winkel 氏による)によって以下のように表現される.
m = 16:
   LP({1,2,4,8},{8,1,2,4},{4,8,1,2},{2,4,8,1})= [0,1,2,3,4,5,6,7,15,14,13,12,11,10,9,8]
一般に:
   LP({1,m/8,m/4,m/2},{m/2,1,m/8,m/4},{m/4,m/2,1,m/8},{m/8,m/4,m/2,1})= [0,..,m/2-1,m-1,...,m/2]

※ 16次の全汎斜四次元方陣は常に完備かつ4-相結であることが証明できる.従って,16次の対称全汎斜四次元方陣は存在しない. これに対して,32次以上の16の倍数次では,全汎斜四次元方陣で,完備でないものや4-相結でないものが存在する. 完備でない全汎斜四次元方陣の構成法は 1.2 および 1.3 を参照.完備だが4-相結でない全汎斜四次元方陣は,以下の XmlHypercube format によって与えられる.
 なお,2-相結(面相結)または3-相結(体相結)な全汎斜四次元方陣は存在しない.

m ≧ 32 で,m が32の倍数であるとき(全汎斜・完備・非4-相結):
   LP({1,m/16,m/8,m/4},{m/4,1,m/16,m/8},{m/8,m/4,1,m/16},{m/16,m/8,m/4,1})= [0,..,m/2-1,m-1,...,m/2]
m ≧ 32 で,m が32の倍数ではない16の倍数であるとき(全汎斜・完備・非4-相結):
   LP({8,m/16,m/8,m/4},{m/4,8,m/16,m/8},{m/8,m/4,8,m/16},{m/16,m/8,m/4,8})= [0,..,m/2-1,m-1,...,m/2]

全汎斜立体方陣の場合と比較してみよ.

Back

1.2 対称な全汎斜方陣 (m = 16x, m ≧ 32)(非4-相結)

1.2.1 m = 32x の場合

求める対称全汎斜四次元方陣(非4-相結) aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = Um(bijkh) m3 + Um(cijkh) m2 + Um(dijkh) m + Um(eijkh) + 1,

ここで
bijkh ≡ i + (m/16)j + (m/8)k + (m/4)h + 7m/32   (mod. m),   0≦bijkh<m,
cijkh ≡ (m/4)i + j + (m/16)k + (m/8)h + 7m/32   (mod. m),   0≦cijkh<m,
dijkh ≡ (m/8)i + (m/4)j + k + (m/16)h + 7m/32   (mod. m),   0≦dijkh<m,
eijkh ≡ (m/16)i + (m/8)j + (m/4)k + h + 7m/32   (mod. m),   0≦eijkh<m,
Um(x) = x (x < m/4 または x ≧ 3m/4), m-1-x (その他)    (体汎斜立体方陣のものと同一).

この方陣は,XmlHypercube formatsAale de Winkel 氏による)によって以下のように表現される.
m = 32:
   LP({1,2,4,8},{8,1,2,4},{4,8,1,2},{2,4,8,1})= [7,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6]

Back

1.2.2 m = 32x+16, m ≧ 48 の場合

求める対称全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = Um,8(bijkh) m3 + Um,8(cijkh) m2 + Um,8(dijkh) m + Um,8(eijkh) + 1,

ここで
bijkh ≡ 8i + (m/16)j + (m/8)k + (m/4)h + 7(m/16+1)/2   (mod. m),   0≦bijkh<m,
cijkh ≡ (m/4)i + 8j + (m/16)k + (m/8)h + 7(m/16+1)/2   (mod. m),   0≦cijkh<m,
dijkh ≡ (m/8)i + (m/4)j + 8k + (m/16)h + 7(m/16+1)/2   (mod. m),   0≦dijkh<m,
eijkh ≡ (m/16)i + (m/8)j + (m/4)k + 8h + 7(m/16+1)/2   (mod. m),   0≦eijkh<m.
Um,8(x) = Pm,16(x mod 16, x mod (m/16)).

Pm,16(x, y) (0≦x<16, 0≦y<m/16) は次の表によって与えられる.ただし,e = m/16, q = (m/16-3)/2 である.
m = 48 (q = 0) の場合は,表の中央部(濃緑色の部分)のみが有効である.

Pm,16(x, y)
016+0...16(q-1)+016q+016q+3016q+816(q-1)+15...16+1515
216+2...16(q-1)+216q+216q+2616q+1016(q-1)+13...16+1313
1216+12...16(q-1)+1216q+1116q+2416q+316(q-1)+3...16+33
1416+14...16(q-1)+1416q+916q+2816q+116(q-1)+1...16+11
516+5...16(q-1)+516q+516q+2016q+1316(q-1)+10...16+1010
716+7...16(q-1)+716q+716q+1616q+1516(q-1)+8...16+88
916+9...16(q-1)+916q+1416q+1816q+616(q-1)+6...16+66
1116+11...16(q-1)+1116q+1216q+2216q+416(q-1)+4...16+44
16(e-1)+1116(e-2)+11...16(e-q)+1116q+4316q+2516q+3516(e-q)+4...16(e-2)+416(e-1)+4
16(e-1)+916(e-2)+9...16(e-q)+916q+4116q+2916q+3316(e-q)+6...16(e-2)+616(e-1)+6
16(e-1)+716(e-2)+7...16(e-q)+716q+3216q+3116q+4016(e-q)+8...16(e-2)+816(e-1)+8
16(e-1)+516(e-2)+5...16(e-q)+516q+3416q+2716q+4216(e-q)+10...16(e-2)+1016(e-1)+10
16(e-1)+1416(e-2)+14...16(e-q)+1416q+4616q+1916q+3816(e-q)+1...16(e-2)+116(e-1)+1
16(e-1)+1216(e-2)+12...16(e-q)+1216q+4416q+2316q+3616(e-q)+3...16(e-2)+316(e-1)+3
16(e-1)+216(e-2)+2...16(e-q)+216q+3716q+2116q+4516(e-q)+13...16(e-2)+1316(e-1)+13
16(e-1)+016(e-2)+0...16(e-q)+016q+3916q+1716q+4716(e-q)+15...16(e-2)+1516(e-1)+15

全汎斜立体方陣の作成 で用いられる Pm,8(x, y) の定義と比較してみよ.)

Pm,16(x, y) は以下の性質を満たす(逆に,以下の性質を満たしていさえすればよい).
(1) 0 ≦ Pm,16(x, y) < m,
(2) Pm,16(x, y) = Pm,16(x', y') ならば x = x', y = y'   (正規性),
(3) Σ v=0,3 {Pm,16(x+4v, y)} = 2(m-1)   (0≦x<4, 0≦y<m/16),
(4) Σ v=0,m/16-1 {Pm,16(x, v) + Pm,16(x+8, v)} = m(m-1)/16   (0≦x<8),
(5) Pm,16(x, y) + Pm,16(15-x, m/16-1-y) = m-1   (対称性).

Back

1.3 対称かつ4-相結な全汎斜方陣 (m = 16x, m ≧ 32)

1.3.1 m = 32x の場合

求める対称かつ4-相結全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = bijkh m3 + cijkh m2 + dijkh m + eijkh + 1,

ここで
bijkh = Um(b*ijkh) (i が偶数), m - 1 - Um(b*ijkh) (i が奇数),
cijkh = Um(c*ijkh) (j が偶数), m - 1 - Um(c*ijkh) (j が奇数),
dijkh = Um(d*ijkh) (k が偶数), m - 1 - Um(d*ijkh) (k が奇数),
eijkh = Um(e*ijkh) (h が偶数), m - 1 - Um(e*ijkh) (h が奇数),

b*ijkh ≡ j* + (m/16)k* + (m/8)h*   (mod. m),   0 ≦ b*ijkh < m,
c*ijkh ≡ k* + (m/16)h* + (m/8)i*   (mod. m),   0 ≦ c*ijkh < m,
d*ijkh ≡ h* + (m/16)i* + (m/8)j*   (mod. m),   0 ≦ d*ijkh < m,
e*ijkh ≡ i* + (m/16)j* + (m/8)k*   (mod. m),   0 ≦ e*ijkh < m,

i* = i (i が偶数), m - 1 - i (i が奇数),
j* = j (j が偶数), m - 1 - j (j が奇数),
k* = k (k が偶数), m - 1 - k (k が奇数),
h* = h (h が偶数), m - 1 - h (h が奇数),

Um(x) = x (x < m/4 または x ≧ 3m/4), m-1-x (その他)    (1.2.1 での定義と同一).

1.3.2 m = 32x+16, m ≧ 48 の場合

求める対称かつ4-相結全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = bijkh m3 + cijkh m2 + dijkh m + eijkh + 1,

ここで
bijkh = Um,8(b*ijkh) (i が偶数), m - 1 - Um,4(b*ijkh) (i が奇数),
cijkh = Um,8(c*ijkh) (j が偶数), m - 1 - Um,4(c*ijkh) (j が奇数),
dijkh = Um,8(d*ijkh) (k が偶数), m - 1 - Um,4(d*ijkh) (k が奇数),
eijkh = Um,8(e*ijkh) (h が偶数), m - 1 - Um,4(d*ijkh) (h が奇数),

b*ijkh ≡ 4j* + (m/16)k* + (m/8)h*   (mod. m),   0 ≦ b*ijkh < m,
c*ijkh ≡ 4k* + (m/16)h* + (m/8)i*   (mod. m),   0 ≦ c*ijkh < m,
d*ijkh ≡ 4h* + (m/16)i* + (m/8)j*   (mod. m),   0 ≦ d*ijkh < m,
e*ijkh ≡ 4i* + (m/16)j* + (m/8)k*   (mod. m),   0 ≦ e*ijkh < m,

i* = i (i が偶数), m - 1 - i (i が奇数),
j* = j (j が偶数), m - 1 - j (j が奇数),
k* = k (k が偶数), m - 1 - k (k が奇数),
h* = h (h が偶数), m - 1 - h (h が奇数),

Um,8(x) = Pm,16(x mod 16, x mod (m/16)).    (1.2.2 での定義と同一).

Back

2. 奇数次

 奇数次の全汎斜四次元方陣は,次数が17以上の場合に限って存在する.奇数次の対称全汎斜四次元方陣も,同じ条件下で存在する.
以下,L15 = lcm{y| 3≦ y ≦15, y は奇数} = 32・5・7・11・13 とおく.(lcm は最小公倍数を表す.なお,gcd は最大公約数を表す.)

2.1 m = 2x+1, m ≧ 17, gcd(m, L15) = 1 の場合(対称全汎斜方陣)

この場合,m は 3, 5, 7, 11, 13 のいずれでも割り切れない.
求める全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = bijkh m3 + cijkh m2 + dijkh m + eijkh + 1,

ここで
bijkh ≡ i + 2j + 4k + 8h + 7   (mod. m),   0 ≦ bijkh < m,
cijkh ≡ i - 2j + 4k + 8h + 5   (mod. m),   0 ≦ cijkh < m,
dijkh ≡ i + 2j - 4k + 8h + 3   (mod. m),   0 ≦ dijkh < m,
eijkh ≡ i + 2j + 4k - 8h - 1   (mod. m),   0 ≦ dijkh < m.

この方陣は,XmlHypercube formatAale de Winkel 氏による)によって以下のように表現される.
   LP({1,2,4,8}+7,{1,-2,4,8}+5,{1,2,-4,8}+3,{1,2,4,-8}-1)

2.2 m = 2x+1, m ≧ 17, 1 < gcd(m, L15) < m の場合(対称全汎斜方陣)

この場合,q = gcd(m, L15), p = m/q とおくと,p > 1, q > 1 である.
求める全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = Sm,q(bijkh) m3 + Sm,q(cijkh) m2 + Sm,q(dijkh) m + Sm,q(eijkh) + 1,

ここで
bijkh ≡ i + 2j + 4k + 8h + 7   (mod. m),   0 ≦ bijkh < m,
cijkh ≡ i - 2j + 4k + 8h + 5   (mod. m),   0 ≦ cijkh < m,
dijkh ≡ i + 2j - 4k + 8h + 3   (mod. m),   0 ≦ dijkh < m,
eijkh ≡ i + 2j + 4k - 8h - 1   (mod. m),   0 ≦ dijkh < m,
Sm,q(x) = Qp,q([x/q], x mod q).

ただし,[x] は x を超えない最大の整数を表す.

Qp,q(x, y) (0 ≦ x < p, 0 ≦ y < q)は,以下の式によって与えられる.
Qp,q(x, y) = qx + y (0 < x < p-1, x が偶数),
qx + (q-1-y) (0 < x < p-1, x が奇数),
y/2 + (q-1)/2 (x = 0, y が偶数),
(y-1)/2 (x = 0, y が奇数),
y/2 + (p-1)q (x = p-1, y が偶数),
(y-1)/2 + pq - (q-1)/2 (x = p-1, y が奇数).

関数 Qp,q(x, y), Sm,q(x) の具体例については,全汎斜立体方陣のページを参照のこと.

2.3 m = 2x+1, m ≧ 17, gcd(m, L15) = m の場合(対称全汎斜方陣)

この場合,m は L15 = 32・5・7・11・13 の約数である.
求める全汎斜四次元方陣 aijkh (i,j,k,h = 0,...,m-1) は以下の式によって与えられる.
aijkh = S**m(bijkh) m3 + S**m(cijkh) m2 + S**m(dijkh) m + S**m(eijkh) + 1,

ここで
bijkh ≡ i + 2j + 4k + 8h + 7   (mod. m),   0 ≦ bijkh < m,
cijkh ≡ i - 2j + 4k + 8h + 5   (mod. m),   0 ≦ cijkh < m,
dijkh ≡ i + 2j - 4k + 8h + 3   (mod. m),   0 ≦ dijkh < m,
eijkh ≡ i + 2j + 4k - 8h - 1   (mod. m),   0 ≦ dijkh < m.

ただし,[x] は x を超えない最大の整数を表す.

S**m(x) は以下のように定義される.

(1) m が 45 以外である場合
S**m(x) = Rq,m/q(x mod q, x mod (m/q)) - 1,

ここで,q は m の最大の素因数である(q は 7, 11, 13 のいずれかである).
Rq,m/q は (q,m/q)-対称長方陣である.詳細は長方陣のページを参照.

(2) m が 45 である場合
S**m(x) = R3,3,5((x/3) mod 3, x mod 3, x mod 5) - 1,

R3,3,5 は (3,3,5)-対称長方陣である.具体的には以下の表によって与えられる.

(3,3,5)-対称長方陣 ((3,5,3)-長方陣 R3,5,3 の向きで表記)

R3,5,3(x,y,0)
313381330
244112362
1425192037
R3,5,3(x,y,1)
29404357
118232845
391142617
R3,5,3(x,y,2)
926272132
441034522
163384315

Back


Home   Site Map   Top   Prev.   3-D ( 1   2   3   4   5 )   4-D ( 1   2   3   4   5   6 )

中村 光利(メールはこちら) メールを送信するためには JavaScript を有効にして下さい.
【特定電子メール法に基づく表示】広告メール、迷惑メールの送信はお断りします

本ページの最終更新日:2016年8月8日
「立体方陣と高次元方陣−三次元以上の魔方陣」   http://magcube.la.coocan.jp/magcube/jp/
Copyright © 2004-2016, Mitsutoshi Nakamura. All rights reserved.

track feed 立体方陣と高次元方陣−三次元以上の魔方陣 powered by InfoMaker RSS
SEO
loading
立体方陣と高次元方陣