我正在尝试创建一个具有非null Guard元素的对列表。
get_only_guarded(L) :-
Guard = null,
findall([S,D],transition(S,D,_,Guard,_),L).
这是我尝试过的,但似乎不起作用。正确的方法是什么?
请改用dif(Guard,null)
。小心处理(=)/2
!
一种更"传统"的方法:在实例化后推送测试
get_only_guarded(L) :-
findall([S,D], (transition(S,D,_,Guard,_),Guard = null), L).