Scheme:イラストロジック:デモ

Scheme:イラストロジック:デモ

Scheme:イラストロジック


イラストロジックのデモ(最初)

最初に解ける例を二種類。 ともにScheme:イラストロジックにアップしたもので quest1.scm と quest2.scm だ。

gosh> (load "./illust.scm")          ;; スクリプトのロード
#t
gosh> (load "./quest1.scm")          ;; 問題のロード
#t
gosh> (illust-analysis row col)      ;; 解析スタート
*** Analysis and Result ***
□□□□■■□□□□
□□□■■■■□□□
□□□■■■■□□□
□□□■■■■□□□
■■・■■■■■■■
□■□■■■■■■□
□□□■■■■□□□
□□□■■■■□□□
□□□■■■■□□□
□□□□■■□□□□
#<closure 0x8189740()>
gosh> (next)                          ;; 次の一手
*** Analysis and Result ***
・・・・■■・・・・
・・・■■■■・■■
・・・■■■■・■■
・・・■■■■・■■
■■・■■■■■■■
■■・■■■■■■・
□□□■■■■・□□
・□□■■■■・□・
・・・■■■■・・・
・・□□■■□・・・
#<closure 0x815e260()>
gosh> (next)                          ;; 次の一手
*** Analysis and Result ***
・・・・■■・・・・
・・・■■■■・■■
・・・■■■■・■■
・・・■■■■・■■
■■・■■■■■■■
■■・■■■■■■・
■■■■■■■・・・
・■■■■■■・・・
・・・■■■■・・・
・・・■■■■・・・
#<closure 0x81a6a00()>
gosh> (next)                          ;; 次の一手
・・・・■■・・・・
・・・■■■■・■■
・・・■■■■・■■
・・・■■■■・■■
■■・■■■■■■■
■■・■■■■■■・
■■■■■■■・・・
・■■■■■■・・・
・・・■■■■・・・
・・・■■■■・・・
finish logical thinking...         ;; あ、おわった
#t
gosh> (load "./quest2.scm")        ;; 問題その二をロード
#t
gosh> (illust-analysis row col)    ;; 解析スタート
*** Analysis and Result ***
■□■■■■■■□□□■■■■■■■□■
■■■■■■■□□□□■□□□□■■■■
■■■■■■■■□□■■□■■□□■■■
■■■■■■■■■■■■■□□■□□■■
■■■■■■■■■■■■■■■□□□■■
■■■□■□□□□□□□□□□□□□■■
■■■■■□□■■■■■■■□□□□■■
■■■■・■■■■■■■■■■・■・■■
■■■□□■■■■■■■■■■■□□■■
■■・■■■■■■■■■■■■■■・■■
■・■■■■■■■■■■■■■■■■・■
・・・・・・・・・・・・・・・・・・・・
■■■・■■■■■■■■■■■■・■■■
■■■□■□□□□■□□□□□■□■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■□■□■□□■□□□□□□□□■■
■■■・■・■■・■■■■■■■・■■■
■■■・■・■■・■■■■■■■・■■■
■□■□□□□□□□□□□□□□□□□■
#<closure 0x8191c40()>
gosh> (next)                                  ;; 次の一手を〜
*** Analysis and Result ***
■■■■■■■■・・・■■■■■■■■■
■■■■■■■・□□・■■・・・■■■■
■■■■■■■■・・■■・■■■・■■■
■■■■■■■■■■■■■・・■■・■■
■■■■■■■■■■■■■■■・・・■■
■■■■■■・・・・・・・・■・■・■■
■■■■■・■■■■■■■■・・■・■■
■■■■・■■■■■■■■■■・■・■■
■■■・■■■■■■■■■■■■・・■■
■■・■■■■■■■■■■■■■■・■■
■・■■■■■■■■■■■■■■■■・■
・・・・・・・・・・・・・・・・・・・・
■■■・■■■■■■■■■■■■・■■■
■■■・■・・・・■・・・・・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■・・■・・・・・■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・・・・・・・・・・・・・・■■■
#<closure 0x81a3ec0()>
gosh> (next)                                  ;; 次の一手を〜
*** Analysis and Result ***
■■■■■■■■・・・■■■■■■■■■
■■■■■■■・■■・■■・・・■■■■
■■■■■■■■・・■■・■■■・■■■
■■■■■■■■■■■■■・・■■・■■
■■■■■■■■■■■■■■■・・・■■
■■■■■■・・・・・・・・■・■・■■
■■■■■・■■■■■■■■・・■・■■
■■■■・■■■■■■■■■■・■・■■
■■■・■■■■■■■■■■■■・・■■
■■・■■■■■■■■■■■■■■・■■
■・■■■■■■■■■■■■■■■■・■
・・・・・・・・・・・・・・・・・・・・
■■■・■■■■■■■■■■■■・■■■
■■■・■・・・・■・・・・・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■・・■・・・・・■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・・・・・・・・・・・・・・■■■
#<closure 0x8185f20()>
gosh> (next)                                  ;; 次の一手を〜
■■■■■■■■・・・■■■■■■■■■
■■■■■■■・■■・■■・・・■■■■
■■■■■■■■・・■■・■■■・■■■
■■■■■■■■■■■■■・・■■・■■
■■■■■■■■■■■■■■■・・・■■
■■■■■■・・・・・・・・■・■・■■
■■■■■・■■■■■■■■・・■・■■
■■■■・■■■■■■■■■■・■・■■
■■■・■■■■■■■■■■■■・・■■
■■・■■■■■■■■■■■■■■・■■
■・■■■■■■■■■■■■■■■■・■
・・・・・・・・・・・・・・・・・・・・
■■■・■■■■■■■■■■■■・■■■
■■■・■・・・・■・・・・・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■■・■・■・■・■・■■■
■■■・■・■・・■・・・・・■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・■・■■・■■■■■■■・■■■
■■■・・・・・・・・・・・・・・■■■
finish logical thinking...                     ;; おっとおしまいだ
#t
gosh>

推論モード搭載版の実行事例

問題はこれ。

cut-sea@jini> cat quest3.scm 
(define row
  '((3 3)
    (2 2 2 2)
    (1 1 1 1)
    (1 4 1)
    (2 2)
    (1 1)
    (1 1 1)
    (1 1 1)
    (2 1)
    (2 1 2)
    (2 3 1)
    (4 1)
    (2 2)
    (2 1)
    (5)))

(define col
  '((2)
    (4 3)
    (2 2 2)
    (1 1)
    (2 2 1)
    (2 3)
    (1 1 2)
    (1 2 1 2)
    (1 1 1)
    (1 1)
    (2 1)
    (2 2)
    (1 3 1)
    (2 3 4)
    (4)))
Script started on Thu May  6 21:47:59 2004
cut-sea@jini> ./illust-lazy.scm ./quest3.scm
*** Analysis and Result ***
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
Go into speculation mode...
*** Analysis and Result ***
■□□□□□□□□□□□□□□  ;; 推論してます
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
*** Analysis and Result ***
■■■・□□□□□□□□□□□
■□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
・□□□□□□□□□□□□□□
back tracking occured!            ;; どうやら自己矛盾発生した模様
*** Analysis and Result ***
・□□□□□□□□□□□□□□    ;; 推論し直してます
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
*** Analysis and Result ***
・■□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□

           :
           :                      ;; こ〜んな感じで探索を繰り返す
           :

*** Analysis and Result ***
・■■■・・・■■■・・・・・
・■■・□■□・・・■■・■■
・■・□・■・□□□■■□■■
・■・・・・□□□■・・□・■
・・□□□□□□□□□□□□■
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
□□□□□□□□□□□□□□・
back tracking occured!           ;; また矛盾発生〜巻き戻し〜
*** Analysis and Result ***
・■■■・・・・□□□□□□□
・■■・□□□□□□□□□□□
・■・□□□□□□□□□□□□
・■・□□□□□□□□□□□□
・・□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□

           :
           :                      ;; こ〜んな感じで探索を繰り返す
           :


*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・■・・・・・・■・
・・・・■・・・□□□・■・・
・・・・・・□■□・・・■・・
□□□□□□□■□□□□■□・
□□□□□□□・□□□□・■・
□□□□□□□■□□□□・■・
□□□□□□□・□□□・■■・
□□□□□□□■□□□□・□・
□□□□□□□■□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・■・・・・・・■・
・・・・■・・・□□□・■・・
・・・・・・□■□・・・■・・
□□□□□□□■□□□□■□・
□□□□□□□・□□□□・■・
・・・・□□□■□□□・・■・
□□□□□□□・□□□・■■・
□□□□□□□■□□□□・□・
・・・□□□□■□□□□・・・
back tracking occured!            ;; この辺でも巻き戻し〜
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・□□□□・・■・
□□□・■・□□□□□・■・・
□□□□・□□□□□□・■・・
□□□□□□□□□□□□■□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□・■・
□□□□□□□□□□□・■■・
□□□□□□□□□□□□・□・
□□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■□□□・・■・
□□□・■・□□□□□・■・・
□□□□・□□□□□□・■・・
□□□□□□□□□□□□■□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□・■・
□□□□□□□□□□□・■■・
□□□□□□□□□□□□・□・
□□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
□□□・■・□■□□□・■・・
□□□□・□□・□□□・■・・
□□□□□□□□□□□□■□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□・■・
□□□□□□□□□□□・■■・
□□□□□□□□□□□□・□・
□□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
□□□□・□□・□□□・■・・
□□□□□□□□□□□□■□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□・■・
□□□□□□□□□□□・■■・
□□□□□□□□□□□□・□・
□□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■□□□・□□・□□□・■・・
□□□□□□□□□□□□■□・
□□□□□□□□□□□□・■・
□□□□□□□□□□□□・■・
□□□□□□□□□□□・■■・
□□□□□□□□□□□□・□・
□□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■□□□□□□□□□□□■□・
・□□□□□□□□□□□・■・
・□□□□□□□□□□□・■・
・□□□□□□□□□□・■■・
・□□□□□□□□□□□・□・
・□□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・□□□□□□□□□■□・
・■□□□□□□□□□□・■・
・・□□□□□□□□□□・■・
・・□□□□□□□□□・■■・
・・□□□□□□□□□□・□・
・・□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・□□□□□□□□□■□・
・■■・□□□□□□□□・■・
・・□□□□□□□□□□・■・
・・□□□□□□□□□・■■・
・・□□□□□□□□□□・□・
・・□□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・□□□□□□□□□■□・
・■■・□□□□□□□□・■・
・・■□□□□□□□□□・■・
・・・□□□□□□□□・■■・
・・・□□□□□□□□□・□・
・・・□□□□□□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・□□□□□□□□□■□・
・■■・□□□□□□□□・■・
・・■■■■・・・・・・・■・
・・・□□□□□□□□・■■・
・・・□□□□□□□□□・□・
・・・□□□□■□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・□□□□□□□■□・
・■■・・□□□□□□□・■・
・・■■■■・・・・・・・■・
・・・・・□□・□□□・■■・
・・・・・□■■□□□□・□・
・・・・・・□■□□□□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・□□□□□□□■□・
・■■・・□□□□□□□・■・
・・■■■■・・・・・・・■・
・・・・・□□・□□□・■■・
・・・・・・■■・□□□・□・
・・・・・・□■■■■□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・□□□□・・□■□・
・■■・・■□□□・・□・■・
・・■■■■・・・・・・・■・
・・・・・□□・□・・・■■・
・・・・・・■■・・・□・□・
・・・・・・□■■■■□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・□□□□・・□■□・
・■■・・■■■・・・・・■・
・・■■■■・・・・・・・■・
・・・・・■■・・・・・■■・
・・・・・・■■・・・□・□・
・・・・・・□■■■■□・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・・・・■・・・■□・
・■■・・■■■・・・・・■・
・・■■■■・・・・・・・■・
・・・・・■■・・・・・■■・
・・・・・・■■・・・■・□・
・・・・・・・■■■■■・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・・・・■・・・■■・
・■■・・■■■・・・・・■・
・・■■■■・・・・・・・■・
・・・・・■■・・・・・■■・
・・・・・・■■・・・■・・・
・・・・・・・■■■■■・・・
*** Analysis and Result ***
・・■■■・・・・・・■■■・
・■■・■■・・・・■■・■■
・■・・・■・・・・■・・・■
・■・・・・■■■■・・・・■
・■■・・・・・・・・・・■■
・・■・・・・・・・・・・■・
・・・・■・・■・・・・・■・
・・・・■・・■・・・・■・・
■■・・・・・・・・・・■・・
■■・・・・・・■・・・■■・
・■■・・■■■・・・・・■・
・・■■■■・・・・・・・■・
・・・・・■■・・・・・■■・
・・・・・・■■・・・■・・・
・・・・・・・■■■■■・・・
Finish analysis...

差分表示を適用したバージョン

変更のあった箇所の差分表示を行う。

cut-sea@jini> ./illust-lazy.scm ./quest1.scm 
*** Analysis and Result ***
□□□□★★□□□□
□□□★★★★□□□
□□□★★★★□□□
□□□★★★★□□□
★★☆★★★★★★★
□★□★★★★★★□
□□□★★★★□□□
□□□★★★★□□□
□□□★★★★□□□
□□□□★★□□□□
*** Analysis and Result ***
☆☆☆☆■■☆☆☆☆
☆☆☆■■■■☆★★
☆☆☆■■■■☆★★
☆☆☆■■■■☆★★
■■・■■■■■■■
★■☆■■■■■■☆
□□□■■■■☆□□
☆□□■■■■☆□☆
☆☆☆■■■■☆☆☆
☆☆□□■■□☆☆☆
*** Analysis and Result ***
・・・・■■・・・・
・・・■■■■・■■
・・・■■■■・■■
・・・■■■■・■■
■■・■■■■■■■
■■・■■■■■■・
★★★■■■■・☆☆
・★★■■■■・☆・
・・・■■■■・・・
・・☆★■■★・・・
*** Analysis and Result ***
・・・・■■・・・・
・・・■■■■・■■
・・・■■■■・■■
・・・■■■■・■■
■■・■■■■■■■
■■・■■■■■■・
■■■■■■■・・・
・■■■■■■・・・
・・・■■■■・・・
・・・■■■■・・・
Finish analysis...

大本命λ

長いけど許してください。m(__)m

Script started on Fri May  7 19:49:49 2004
cut-sea@jini> ./illust-lazy.scm ./lambda.scm
*** Analysis and Result ***
o                    o
o                    o
o                    o
o                    o
o            **      o
o            **      o
o            **      o
o            **      o
o            **      o
o                    o
o                    o
o                    o
o                    o
*** Analysis and Result ***
.                    .
.                    .
.                    .
.                    .
.oooooooooooo##oooooo.
.oooooooooooo##oooooo.
.oooooooooo  ##  oooo.
.           o##o     .
.           o##o     .
.                    .
.                    .
.                    .
.                    .
*** Analysis and Result ***
.                    .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........  ##o .....
.           .##.     .
.           .##.     .
.                    .
.                    .
.                    .
.                    .
*** Analysis and Result ***
.                    .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........**##.o.....
.           .##.     .
.           .##.     .
.                    .
.                    .
.                    .
.                    .
*** Analysis and Result ***
.                    .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          o.##.     .
.           o        .
.           o        .
.           o        .
.           o        .
Go into speculation mode...
*** Analysis and Result ***
.o                   .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
..o                  .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
...o                 .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
....o                .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
.....o               .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
......o              .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
.......o             .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
........o            .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
.........o           .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
..........o          .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
...........o         .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
Go into speculation mode...
*** Analysis and Result ***
............o        .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
.............        .
.                    .
.           *        .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .

.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
.............        .
.                    .
.oooooooooo # ooooooo.
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
............. ooo    .
.  oooooo     ooo    .
........... # ........
.  oooooo      oooo  .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           . *      .
.           . **     .
.           . **     .
.           .        .
*** Analysis and Result ***
.............o...****.
.oo......     ...    .
........... # ........
.  ......      ....  .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           . #** ooo.
.           .o##o    .
.           . ##* ooo.
.           .        .
back tracking occured!
*** Analysis and Result ***
............*        .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
............#***ooooo.
.           *        .
.           o        .
.           o        .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
............####......
.oooooooo   #***ooooo.
.           .***     .
.           .**o     .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .ooo     .
.           .ooo     .
.           .ooo     .
.           .ooo     .
back tracking occured!
*** Analysis and Result ***
...........*         .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
...........#***oooooo.
.          *         .
.          o         .
.          o         .
.............##.......
.............##.......
...........####.......
.          o.##.     .
.          ..##.     .
.          o.        .
.          o.        .
.          o.        .
.          o.        .
*** Analysis and Result ***
...........####.......
.ooooooo   #***oooooo.
.          .o**      .
.          .o**      .
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ..oo      .
.          ..oo      .
.          ..oo      .
.          ..oo      .
*** Analysis and Result ***
...........####.......
........ooo####.......
.oooooooooo..##oooooo.
.oooooooooo..##oooooo.
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ....      .
.          ....*     .
.          ....*     .
.          ....      .
*** Analysis and Result ***
...........####.......
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ....      .
.          ....#*o   .
.          ....#***oo.
.          ....      .
*** Analysis and Result ***
...........####.......
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##.ooo  .
.          ..##.ooo  .
.          ....  oo  .
.          ....##.   .
.          ....####...
.          ....  *   .
*** Analysis and Result ***
...........####.......
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##....  .
.          ..##....  .
. ***  *** ....oo..oo.
.          ....##.   .
.          ....####...
.          ....  #*  .
*** Analysis and Result ***
...........####.......
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
. ooo  oo  ..##....  .
. o      o ..##....  .
. ###  ### ...........
. o      o ....##.o  .
. ooo  oo  ....####...
. ooo  oo  ....**##  .
back tracking occured!
*** Analysis and Result ***
..........*          .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
..........#***ooooooo.
.         o          .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
..........####........
.         .***       .
.          oo*       .
.          oo*       .
.............##.......
.............##.......
...........####.......
.          o.##.     .
.          ..##.     .
.          o.o*      .
.          o.o       .
.          o.o       .
.          o.o       .
*** Analysis and Result ***
..........####........
.ooooooooo.###*oooooo.
.oooooooooo..#*oooooo.
.oooooooooo..#*oooooo.
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ...#***ooo.
.          ...       .
.          ...       .
.          ...       .
*** Analysis and Result ***
..........####........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##. o   .
.          ..##.     .
.          ...####....
.          ...o*     .
.          ...o* o   .
.          ...oooo   .
back tracking occured!
*** Analysis and Result ***
.........*           .
.                    .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
.........#***oooooooo.
.        o           .
.                    .
.                    .
.............##.......
.............##.......
...........####.......
.           .##.     .
.          ..##.     .
.           .        .
.           .        .
.           .        .
.           .        .
*** Analysis and Result ***
.........####.........
.        .o**        .
.          oo        .
.          oo        .
.............##.......
.............##.......
...........####.......
.          o.##.     .
.          ..##.     .
.          o.**      .
.          o.        .
.          o.        .
.          o.        .
*** Analysis and Result ***
.........####.........
.oooooooo..##**oooooo.
.          ..        .
.          ..        .
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ..##**oooo.
.          ..        .
.          ..        .
.          ..        .
*** Analysis and Result ***
.........####.........
...........####.......
.    oo    ..**oo    .
.    oo    ..**oo    .
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ..####.....
.          ..oo*     .
.          ..oo*     .
.          ..oooo    .
*** Analysis and Result ***
.........####.........
...........####.......
.oooo..oooo..##..oooo.
.oooo..oooo..##..oooo.
.............##.......
.............##.......
...........####.......
.          ..##.     .
.          ..##.     .
.          ..####.....
.          ....#*o   .
.          ....#***oo.
.          ......    .
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##.ooo  .
.          ..##.ooo  .
.          ..####.....
.          ....##.   .
.          ....####...
.          ......*   .
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##....  .
.          ..##....  .
.          ..####.....
.          ....##.   .
.          ....####...
.          ......#***.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.          ..##....oo.
.          ..##....oo.
.          ..####.....
.          ....##.ooo.
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.o         ..##.......
.          ..##.......
.          ..####.....
.          ....##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
..o        ..##.......
.          ..##.......
.          ..####.....
.          ....##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
...o       ..##.......
.          ..##.......
.          ..####.....
.          ....##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
....o      ..##.......
.          ..##.......
.          ..####.....
.          ....##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.....o     ..##.......
.          ..##.......
.          ..####.....
.          ....##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
......     ..##.......
.          ..##.......
.          ..####.....
.    *     ....##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
......     ..##.......
.          ..##.......
.          ..####.....
.ooo # oooo....##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
......o    ..##.......
.          ..##.......
.          ..####.....
.... # ........##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.......    ..##.......
.          ..##.......
.          ..####.....
.... #*........##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.......    ..##.......
.          ..##.......
.          ..####.....
....o##........##.....
.          ....####...
.          ......####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.......o   ..##.......
.          ..##.......
.          ..####.....
.....##........##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
........ * ..##.......
.          ..##.......
.          ..####.....
.....##........##.....
.          ....####...
.          ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
........ # ..##.......
.        o ..##.......
.        o ..####.....
.....##........##.....
.        o ....####...
.        o ......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
........ # ..##.......
.        .o..##.......
.        .o..####.....
.....##........##.....
.        .o....####...
.        .o......####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
........ #*..##.......
.        ....##.......
.        ....####.....
.....##........##.....
.        ......####...
.        ........####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
........o##..##.......
.        ....##.......
.        ....####.....
.....##........##.....
.        ......####...
.        ........####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
.o       ....##.......
.        ....####.....
.....##........##.....
.        ......####...
.        ........####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
..o      ....##.......
.        ....####.....
.....##........##.....
.        ......####...
.        ........####.
Go into speculation mode...
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
...o     ....##.......
.        ....####.....
.....##........##.....
.        ......####...
.        ........####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
....     ....##.......
.  o     ....####.....
.....##........##.....
.  *     ......####...
.  *     ........####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
....     ....##.......
.oo. *** ....####.....
.....##........##.....
.  #*  oo......####...
.  #*  oo........####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
....o  **....##.......
....o###*....####.....
.....##........##.....
.  ##  ........####...
.  ##oo..........####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
.....oo##....##.......
.....####....####.....
.....##........##.....
.  ##  ........####...
.**##............####.
*** Analysis and Result ***
.........####.........
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
.......##....##.......
.....####....####.....
.....##........##.....
.oo##**........####...
.####............####.
*** Analysis and Result ***
.........####.........       ;; おおっ、λの御尊顔ありがたや
...........####.......
.............##.......
.............##.......
.............##.......
.............##.......
...........####.......
.........##..##.......
.......##....##.......
.....####....####.....
.....##........##.....
...####........####...
.####............####.
Finish analysis...
cut-sea@jini> exit
exit

Script done on Fri May  7 19:50:05 2004

ただし、これは推論モードでの分岐を塗りつぶし優先でなく、 塗りつぶし無し優先でやらせてます。(現時点で複数解対応してないので)2004/05/07 04:10:55 PDT

複数解対応での実行例

Script started on Wed May 26 00:50:14 2004
cut-sea@jini> ./illust-lazy.scm ./questX.scm
[[ Analysis and Result ]]
□□□□□□  
□□□□□□  
□□□□□□
□□□□□□  
□□□□□□  
□□□□□□  
Go into speculation mode...
[[ Analysis and Result ]]
★□□□□□  
□□□□□□
□□□□□□
□□□□□□
□□□□□□  
□□□□□□  
[[ Analysis and Result ]]
■☆□□□□  
☆□□□□□  
□□□□□□  
□□□□□□
□□□□□□  
□□□□□□  
Go into speculation mode...
(snip)
[[ Analysis and Result ]]
■・■・・・
・■・■・・
■・・・■・
・■・・・■
・・■・■・
・・・■・■
Found 1 solution...          ;;最初の解です左上がりっすね
back tracking occured!
(snip)
[[ Analysis and Result ]]
■・■・・・
・■・■・・
■・・・■・
・・■・・■
・■・・■・
・・・■・■
Found 2 solution...          ;;2個目〜
back tracking occured!

(snip)

[[ Analysis and Result ]]
・・・■・■
・・■・■・
・■・・・■
■・・■・・
・■・・■・
■・■・・・
Found 721 solution...         ;;721〜
back tracking occured!
[[ Analysis and Result ]]
・・・■・■
・・■・■・
・■・・・■
■・・☆□・
・■・□□・
■・■・・・
[[ Analysis and Result ]]
・・・■・■
・・■・■・
・■・・・■
■・・・★・
・■・★□・
■・■・・・
[[ Analysis and Result ]]
・・・■・■
・・■・■・
・■・・・■
■・・・■・
・■・■☆・
■・■・・・
[[ Analysis and Result ]]
・・・■・■
・・■・■・
・■・・・■
■・・・■・
・■・■・・
■・■・・・
Found 722 solution...         ;;722〜最後は右上がり(推論が塗りつぶし優先だからだね)
Finish analysis and found 722 solutions.     ;;あ、おわっちった。

ちなみに、n×n で各行各列のデータがすべて '(1 1) なものの解の数は以下。

n 解の数
3 0
4 2
5 16
6 722
7 33988
8 2215764
9 不明
10 不明

n=8 はほとんど丸一日かかってたので n=9 以降はちょっと試す気にならん。

More ...