Добавление Пролога оператором cut

Какая проблема может возникнуть, когда мы используем оператор append с оператором cut?

   append2([],L,L):-!.
   append2([H|T],L,[H|TL]):-append2(T,L,TL).

Я пробовал несколько разных входов, но всегда удавалось.

?- append2([1,2],[5],L).
L = [1, 2, 5].

?- append2([1,2],[1,2],L).
L = [1, 2, 1, 2].

?- append2([],[1,2],L).
L = [1, 2].

?- append2([1,2],[],L).
L = [1, 2].
11
задан false 10 November 2012 в 22:18
поделиться