Ответ в теме: Логическая задача на Prolog: Порядок фигур

      Комментарии к записи Ответ в теме: Логическая задача на Prolog: Порядок фигур отключены
#2843

prologgg
Участник

DOMAINS
тип,цвет = symbol
предмет = фигура(тип,цвет)
список_предметов = предмет*
типы = тип*
цвета = цвет*
PREDICATES
nondeterm divide_list(список_предметов, список_предметов)
CLAUSES
divide_list(Part, [Part]):-!.
divide_list(List, [First_Part|Tail]):-
append(First_Part, ListPart, List),
divide_list(ListPart, Tail).

Подскажите, пожалуйста, почему появляются ошибки.

Type error: Illegal variable type for this position

Показывает ошибку в этой строчке:
divide_list(Part, [Part]):-!.

Type error: The functor does not belong to the domain

В этой:
divide_list(Shapes, [_,[shape(_, green), shape(_, red), shape(_, blue)], _]);

Я внимательно прочитал информацию по тем ссылкам, который вы оставили, но не смог самостоятельно разобраться.