思うだけで学ばない日記 2.0

思うだけで学ばない日記から移転しました☆!よろしくお願いします。

ぼくの考えたKKPとKPPの実装(3)

KPPの利用できる対称性を部分写像に分解して捉えようとするのは筋が悪かったっぽいorz*1
正直、
  KPP[OUPosB][PPos][PSpec][PPos'][PSpec']
 = KPP[OUPosB][PPos'][PSpec'][PPos][PSpec]
 = KPP[fh(OUPosB)][fh(PPos)][PSpec][fh(PPos')][PSpec']
 = KPP[fh(OUPosB)][fh(PPos')][PSpec'][fh(PPos)][PSpec]
と表される関係が利用できる全てであって、実質データ量がほぼ1/4にできるというのはだいたい合ってるものの、その量を表す式は次のが正しい*2

  • (|KPP| - |Z_g|) / 4 + |Z_g|
    <追記>→誘導

ここで|KPP|はKPPの総要素数、|Z_g|は上記4項関係におけるアドレスの不動点の個数う
言い忘れたがfh(p)は駒位置pの水平反転
このデータ量削減を実現するには、上記等式で結ばれる4種類のアドレス∈{OUPosB}×{PPos}×{PSpec}×{PPos'}×{PSpec'}の中からprincipalなアドレスを一意に決める規則が必要である。
一意なら何でもいいはずなので、ここでは次の条件を満たすものとしようっと
<追記>→誘導

アドレス(OUPos, PPosL, PSpecL, PPosR, PSpecR)∈{OUPosB}×{PPos}×{PSpec}×{PPos'}×{PSpec'}のうち、

  • PSpecL <= PSpecRを満たし、かつ
  • OUPosとPPosのうち東側(筋1寄り)の駒位置を水平反転したものがもとの駒位置の西側より西にならないものがprincipal

ただし駒台位置0の水平反転は0とし、かつ東西判定から除外する。*3

何でこれで一意に決まるのかわからん…(マテ、

実質データ量削減はこれで良いとして*4、テーブルサイズ削減の方策が振り出しに戻った気がするわけだが、、
当初の規定路線に沿う形で

  • f_1: {PPos}×{PSpec}→{idx1}
  • f_2: {idx1}×{idx1}→{idx2}
  • f_3: {OUPosB}×{idx2}→E

の分解でできるだけ変えずに済みますように人

*1:つなみにKPPの実質データ量が3800万要素というのも間違いで、本当は6000万台のはず(でないと十分サイズの1/4にならない) つか実質データ量3800万要素に対してテーブルサイズが3600万要素で済むという結論が今にして思えば謎

*2:いや知らんけど多分、

*3:例えばB王将が駒台上でPSpecLが置駒なら、PPosLが最も西かつ最も東、とみなす

*4:いや知らんけどPart☆II