【问题标题】:How to create arithmetic predicates in pyDatalog?如何在 pyDatalog 中创建算术谓词?
【发布时间】:2017-06-23 16:48:00
【问题描述】:

如何将这种算术谓词转换为合法的 pyDatalog 谓词?

add(X, Y, Z) ← X + Y = Z

例如:

?add(5, 7, Z)。

答案应该是:add(5, 7, 12)。

谢谢!

【问题讨论】:

    标签: python python-2.7 logic-programming datalog pydatalog


    【解决方案1】:
    add(X, Y, Z) <= (Z == X + Y)
    

    【讨论】:

    • 感谢您的评论。但是当我运行 add(5,Y,15) 时,它返回“none”。它应该返回 10..
    • 确实,pyDatalog 没有约束/方程求解器。
    • 您可以尝试使用 3 个子句,只需添加:add(X,Y,Z)
    猜你喜欢
    • 1970-01-01
    • 2011-11-10
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    • 2018-02-01
    相关资源
    最近更新 更多