

:- use_module(library(clpfd))
.
play(J1,J2,NbJoeurs)
:- Subb #= NbJoeurs -1, between(1,Subb ,J1)
, between(2,NbJoeurs,J2)
, J1 #< J2.
findall(play(X,Y), play(X,Y,6),Bag)
.
It does not print all solutions, there are ...
Bag = [play(1, 2)
, play(1, 3)
, play(1, 4)
, play(1, 5)
, play(1, 6)
, play(2, 3)
, play(2, 4)
, play(2, 5)
, play(..., ...)
|...].
How to have all solutions ?