如何在pyDatalog中求解方程?

时间:2017-11-22 17:58:50

标签: logic-programming pydatalog

pyDatalog page显示了如何实现析因算法来计算N!值。是否有可能修改它(例如使用谓词)来解决N中的N!将等于给定值(例如6)?

from pyDatalog import pyDatalog
pyDatalog.create_terms('factorial, N')

factorial[N] = N*factorial[N-1] 
factorial[1] = 1
print(factorial[3]==N)  # prints N=6

但我想问:

print(factorial[N]==6)  # and receive N=3

不幸的是,这样的情况pyDatalog说:

DatalogError: Error: left hand side of comparison must be bound: >/2

0 个答案:

没有答案