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