<cl> (?- (member 2 ?x))のような問い合わせを行なうと無限の候補を作りはじめるため 答えが返ってこなくなる. そこで,答えがひとつ出たところで表示し, その後さらに答えを求めるかどうかを人間に 聞いてくるように作ることを考える. このような対話処理は別の見方をすれば, 人間がさらに答えを求めたということは, そのゴールが失敗したとみなして,またゴールの証明探索を継続する ということを意味すると考えるとすっきりする. このようにゴールが失敗した時に後戻りすることをバックトラキングと呼 ぶ.バックトラッキングでは,ゴールに与えられた変数の値がゴールを満たさ なかったとみなして別の値を探しにゆくことになる.