>>100

適当に説明すると、findall は第2引数(述語)を満たすような第1引数(変数)のリストを第3引数(変数)に束縛する。
ここでは、このプログラムがウサギが犯人であることを導くことと、それ以外の結論を導かないことを示すために使った。

ttp://www.cs.ualberta.ca/~you/courses/325/Mynotes/Log/builtin.html
の "3. Finding all solutions" も参考になると思う