bagof
を使用して、Prolog で 3 つ以上の属性を持つデータベース ファクトをクエリするにはどうすればよいですかsetof
。データベースを定義した例students(name, grade,sport,gender)
。クリケットなど、特定のスポーツをしている生徒のリストを見つけたいと思っています。私の現在のクエリ
sport_list(L):-
bagof(S,N^G^D^students(N,G,S,D),L),
S = cricket.
student(patash,5,rugby,male).
student(naomi,3,netball,female).
student(lepo,6,_,male).
student(diamal,4,cricket,male).
student(bonga,5,chess,female).
student(imi,6,cricket,male).
student(ayanda,3,_,female).