Итак, я знаю, как найти минимум в списке, но что, если я хочу подвести результат? Вот что я должен найти минимум:
min_in_list([Min],Min). min_in_list([H,K|T],M) :- H =< K, min_in_list([H|T],M). min_in_list([H,K|T],M) :- H > K, min_in_list([K|T],M).
Это было какое-то время, но я думаю что-то вроде:
min_squared(List,Squared) :- min_in_list(List, Min), Squared is Min*Min.
Передать его функции, которая умножает свой аргумент на себя?