コラッツ予想がとけたらいいな2

自分の考察を書いていきます。

Egisonで数独

失敗の記録です。
Egisonで数独にチャレンジしてみた。

まずヒント文字列を、1~9のCollectionのCollectionにパースする。
そしてパターンマッチ一発で解く。
3*3ブロックごとではなく、行ごとに分割する。
なので、matcherはlist(multiset(integer))で良い。
match節で、ヒント合致と、各列/ブロックの和が45を課す。
(「和が45」というのは間違った制約かもしれないが、今はこれで行く。)

この素朴な実装では、
計算量が大きくなりすぎてうまくいかなかった。




個人の感想だが、
Egisonでは、コードは直感的に書けるのだが、
探索空間が大きくなりすぎて実質解けない、
という事がよく起こる。
Egisonは100年後の言語なのかもしれない。