Ответ в теме: Логическая задача на 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)], _]);

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