Prolog编程中的cut操作，用!表示，该操作总能够成功，但是不能够回溯位于该操作左边的子句。Cut操作被广泛的用于减掉不希望回溯的分支，例如，避免找到程序不需要的额外的答案和避免额外的计算。应当保守的应用cut操作，当程序不正确会有一种诱惑来插入cut来检验cut能否让程序正确。如果一个测试是不必须的因为有cut来保证这是真的，那么最好在合适的地方加上注释说明这一点。Cut被某些人认为是有争议的逻辑程序控制方式，因为该操作是因为效率问题被加入的而且不是一个Horn clause.Sectio