predicates
nondeterm решение(string)
nondeterm условие(integer,integer,integer,integer)
nondeterm имя(integer,integer,integer,integer,integer,string)
clauses
решение(Имя):-
имя(Таня,Лена,Аня,Катя,Марина,Имя),
условие(1,Таня,Лена,Аня),
условие(2,Лена,Аня,Катя),
условие(3,Аня,Катя,Марина),
условие(4,Катя,Таня,Марина).
условие(1,Таня,Лена,Аня):-
Таня=1,Лена+Аня>0;Таня=0.
условие(2,Лена,Аня,Катя):-
Лена=1,Аня=1,Катя=1;Лена=0.
условие(3,Аня,Катя,Марина):-
Аня+Катя>0,Марина=0;Аня+Катя=0.
условие(4,Катя,Таня,Марина):-
Катя=0,Таня=1,Марина=1;Катя=1.
имя(1,0,0,0,0,"Таня").
имя(0,1,0,0,0,"Лена").
имя(0,0,1,0,0,"Аня").
имя(0,0,0,1,0,"Катя").
имя(0,0,0,0,1,"Марина").
goal
решение(Имя).
Объяснение:
Имя=Катя
1 Solution