審判込みの一般化詰将棋問題を考えよう その⑤

G_3'を作ってみる。スーパーがっしゃがしゃパート。

無計画にやるとこうなる。 

もはや他人に通じるとは思えない。

たすけて

 

前回

uso-800-plus-alpha.hatenablog.com

3 お題を構成する

12DNFを作るのは苦しいので、がっつり制限して以下のものを作る。

 

論理変数の集合A= \{ a _ 1, a _ 2 \} , B = \{ b _ 1 , b _ 2 \}

A-LOSE = A_1∨A_2,

B-LOSE = B_1∨B_2

とする。今回は、

A_1=¬a_2∧¬b_1∧b_2,

A_2=a_1∧b_2

B_1 = a_1∧a_2∧b_1

B_2=a_2∧¬b_2

※どちらが勝ちか確かめていません。

 

こんな図

f:id:tanpe_kanpinuyep_ne:20200113164423p:plain


①上2列は、受方勝利時の判定

A_1A_2の論理式の肯定否定を逆にした方に、馬の利きがあると即死する配置を設置する。

→受方は、即死を回避できるルートが確保されたとき(A_1A_2が真)にこの列を選択する。

 

②次の2列は、攻方勝利時の判定

B_1B_2の論理式の肯定否定のとおりに、通過に馬の利きが必要な配置を設置する。

→攻方は、最後まで通過できるルートが確保されたとき(B_1B_2が真)にこの列を選択する。

 

③その下は延々と論理変数の真偽を交互に入れ替える配置

右側を攻方の論理変数(a_i)、左側を受方の論理変数(b_i)として、並べていく。

※この部分の構成にだいぶ大きな勘違いがありました。

当初は、こんな配線だったんですが、

f:id:tanpe_kanpinuyep_ne:20200113023451p:plain

この場合、受方が変数を操作した瞬間に連続王手の千日手が成立するパターンが存在することに気付きました。修正版では、受方がどの変数を選択するかを確定させた後に、審判部分(左)に入射させることにします。そのため、受方に桂馬を「変数の数-1枚」持たせておいて、分岐のデータを残しておくことにします。

さらに、右側ルートで攻方王が打歩詰になるときに、桂合されると危ないので、桂馬を品切れにしておきます。

ついでに言うと、1箇所青丸入れ忘れています。

今回の図面が、桂をたくさん持たせる構図にしても、耐障性があるか分からないのですが、暫定的に・・・・・・ 

 

4 仕様

(1)必須のもの

受方持駒は、桂馬 × 上記の適量数、歩 × 数枚とする。

 

(2)議論上あったほうがよいもの

よりG_3'に近づけるために、千日手判定を4回目の同一局面ではなく、2回目の同一局面で行う。

受方が変数を変更する際の攻方の戦略としては、変更後の盤面が初出のときには

f:id:tanpe_kanpinuyep_ne:20200113152024p:plain

 9九→10八→11十のルートで龍を動かし、

 

2回目の場合(=受方負け)の場合には

f:id:tanpe_kanpinuyep_ne:20200113152224p:plain

9九→9八→10九のルートで龍を動かす。

 

受方がどの変数を変更するのか決定したあとに、攻方は龍の位置を決定できるので、この戦略で大丈夫なはず・・・・・・

 

 

この回数制限を入れることによって、ゲームの複雑性は簡単にはなっても、難しくはならないはず。したがって、2回制限を入れてEXPSPACE困難ならば、4回制限でもEXPSPACE困難なはず。

 

次回

uso-800-plus-alpha.hatenablog.com