这个问题与first order logic creating terms for arithmetic expressions using prolog直接相关。在按照链接实现逻辑后,我对printauth/1的输出格式有问题。它目前的结果是8-2+4* -3,怎么可能得到像((8-2)+(4* -3))这样的东西(请注意,它与+(-(8,2),*(4,-3)))不同。我一直在尝试在format/2谓词中使用各种选项(\k,\q),但都不起作用。即使我尝试了writ
我有与formatting the output with proper paranthesis - Prolog相同的问题,但是解决方案不应该使用!和-->。来自链接的接受答案包含这两个运算符。特别是,我正在寻找一种在规则参数上使用Prolog模式匹配的解决方案。 为了方便起见,我在这里重写这个问题。在按照链接实现逻辑后,我对printauth/1的输出格式有问题。我一直在尝试在format
在我探索记录列表的不同方法的过程中,我对佩雷拉和希伯的“Prolog和自然语言分析”(Prolog and )一书(第42页)中的“Prolog和自然语言分析”(Prolog and )一书中的列表感兴趣起初,我认为这样的表示法在语法上是不正确的,因为它必须说是[[a,b]|[c]],但是在使用write_canonical