チョコレートゲームは,一箇所に苦いチョコレートを配置した板状のチョコレートにおいて,2人のプレイヤが互いに縦もしくは横一直線にチョコレートを2つに分割して,苦いチョコレートを含まない方を食べる.そして苦いチョコレートを相手に残せば勝ちとなる.図1.1のチョコレートゲームは,山の高さがそれぞれ3,3,2の3つの山をもつニムと数学的に同値である.ここで,カットできる最大回数が,苦い部分の左側で3,上側で3,右側で2となる.このとき,座標{3,3,2}と表す. 本稿では,図 1.2〜図1.4のような階段状のタイプのチョコレートを研究している.このタイプでは,垂直方向のカットにより,水平方向に切ることができる回数が減る可能性があり,長方形チョコレートゲームや,3つの山の石取りゲームとは数学的性質が異なる.
図1.1のような長方形チョコレートゲームは各方向に切ることができる最大数によって座標{x,y,z}と表すことができ,3つの山の石取りゲームも座標{x,y,z}と表すことができるが,これらは数学的に同値であるから,良く知られている3つの山の石取りゲームの理論によってGrundy数はx ⊕ y ⊕ zで表すことができる.しかし階段状のタイプのチョコレートにおいては,Grundy数を求めることが簡単でないものが多い. 私達のグループは国際的な数学専門誌 [1] において,Grundy数がx ⊕ y ⊕ zで表されるためにチョコレートの形状が満たすべき十分条件を提出した.なお,Grundy数がx ⊕ y ⊕ zという形にならないチョコレートの形状については,例としては図1.5と図1.6のチョコレートがある.
従って,Grundy数がx ⊕ y ⊕ zで表されるためにチョコレートの形状が満たすべき必要十分条件が重要な問題になる.本論文においては,数学専門誌[1]掲載論文を一般化したものである必要十分条件を証明する.その論文で使用している数学は,高校レベルを殆ど越えていないが, かなり独特な証明と計算が多い.証明方法の難しさは,私の属する研究グループがこの分野の開拓者的な役割をしたため,この分野はまだ標準的な証明方法が確立されていない.そのために, 普通の数学のテキストに存在しないような証明方法が大半を占める.そのために専門の数学者であっても,理解するのが難しい可能性が大きい.黒板を使って口頭で説明することで証明を要点を理解してもらうことはそれほど難しくないが,論文として書くと難解になってしまう.
ただし,数学で博士号を持つ顧問の先生と共に綿密な添削を何度も繰り返したので,数学的厳密さは保証できる.
以下,Z≥0を非負整数の集合とする.また xi ∈ {0,1}と書くときは,xiは0か1であるという意味である.
チョコレートゲームは組み合わせゲームであり,詳しくは[4]を参照していただきたい.
x ⊕ y = |
|
wi 2i, (1) |
チョコレートゲームには以下の2つの状態があり,すべての状態はどちらかに属する.
図1.2から図1.4において,各チョコレートゲームは,苦い部分の左側のチョコレートと,苦い部分の右側のチョコレートの直和であると考えることができる.
mexから次の補題が導かれる.
(i) x = mex({yk,k=1,2,...,n}).
(ii) 全てのkに対してx ≠ ykであり,u < xとなるu ∈ Z≥ 0に対して,u = ykとなるkがある.
証明. 定義 1.5 から直接導かれる(mexの定義).
証明. 定義 1.5のmexの定義から直接導かれる..
Grundy数が強力なツールであることは,次の結果からわかる.
この定理の証明は,[4]を参照していただきたい.
一般的なチョコレートを扱うと複雑になりすぎるため,ここでは高さが一定の条件に従って増加する階段状のチョコレートだけを研究する.
CB(f,3,13) f(t) = ⌊ t/4⌋
CB(f,4,9) f(t) = ⌊ t/2⌋
CB(f,2,9) f(t) = ⌊ t/2⌋
CB(f,8,31) f(0)=f(1)=0かつt > 1に対して,f(t) =2⌊ log2t ⌋ −1 .
定義1.6の条件を満たす関数fを固定して考えるときは,fを略して,CB(f,y,z)を{y,z}という座標で表す.
関数fを固定して考える.CB(f,y,z)の各座標{y,z}において,そこから一手で移動できるポジションの座標をすべて表す集合をmovef({y,z})と書く.これは定義1.4で定義されたmoveの特別な場合である.階段状のチョコレートでは垂直方向のカットにより(z座標が減って),水平方向に切ることができる回数が減る可能性があるが,このことは下の定義では, 第2座標がmin( y, f(w))となることで表されている.
{y,z}={2,5}の位置から開始したとする.第1座標であるyを減らすと,{1,5}, {0,5}へ行けるので, {1,5}, {0,5} ∈ movef({2,5})となる.
{y,z}={2,5}の位置から第2座標であるzを5から4に減らすと,第1座標であるyは,min(2, ⌊ 4/2 ⌋ )=min(2,2)=2のままである.従って,{2,4} ∈ movef({ 2,5 }) {y,z}={2,5}の位置から第2座標であるzを5から3に減らすと, 第1座標であるyは,min(2, ⌊ 3/2 ⌋ )=min(2,1)=1となる.従って, {1,3} ∈ movef({ 2,5 })
{y,z} = {1,3}の位置からはどのようにしても{0,5} へは行けないので,{0,5} ∉ movef({1,3})である.
本論文の目的として,チョコレートCB(f,y,z)のGrundy数がG({y,z}) = y ⊕ zとなるためにfが満たすべき必要十分条件を求めるが,そのための方法として,図 1.2,図1.3のように苦い部分の右側にCB(f,y,z),左側に高さ1のチョコレートをおいた直和を考える.左側の高さ1チョコレートを垂直方向にカットできる回数をxとすると,このチョコレートは{x,y,z}と表すことができる.このチョコレートの P-ポジションがx⊕ y⊕ z=0となる場合であることを示し,結果的にCB(f,y,z)のGrundy数がG({y,z}) = y ⊕ zとなることを導く.