I have seen lots of examples of cuts used inside Prolog predicate clauses (removes all choicepoints of that specific predicate).
For example:
gamble(X) :- gotmoney(X),!.
gamble(X) :- gotcredit(X), \+ gotmoney(X).
However, how do they exactly behave when put inside a prolog query? They remove ALL choicepoints so far?