Prolog 中具有多个变量的 Findall

Findall with multiple variables in Prolog

我想从我在 Prolog 中制定的规则中获取解决方案列表。

然而,findall 谓词似乎只适用于一个变量。

谁能建议如何绕过这个明显的限制?

我的规则

beat(P,M,E)

我想要什么

L = [[P,M],[P,M],................]

我现在得到的

L = [P,P,P,P,.........]

L = [M,M,M,M,M.............]

findall 可以处理非常灵活的变化。我想你想要这样的东西:

findall([P,M], beat(P,M,E), L).