【发布时间】:2020-07-06 21:20:00
【问题描述】:
所以这是一个序言代码,我无法弄清楚 SLD 树是什么。我知道它不应该在深度优先分辨率下工作,我只想用树来可视化它。
single(Person) :- not(married(Person)), man(Person).
married(john).
man(john).
man(frank).
提前致谢!
【问题讨论】:
标签: prolog sld-resolution
所以这是一个序言代码,我无法弄清楚 SLD 树是什么。我知道它不应该在深度优先分辨率下工作,我只想用树来可视化它。
single(Person) :- not(married(Person)), man(Person).
married(john).
man(john).
man(frank).
提前致谢!
【问题讨论】:
标签: prolog sld-resolution
不确定,但这是我想出的。
single(Person)
|
not(married(Person)),man(Person)
|
married(Person),!,fail,man(Person)
|
(Person = John)
|
married(John),!,fail, man(John)
|
!,fail, man(John)
|
*fail, man(John)*
到此为止,我想,是由于失败而被砍掉的。 希望我对您有所帮助。
【讨论】: