Я не уверен в том, что вы спрашиваете, но прежде всего обратите внимание, что это не функции, а предикаты. Это совершенно другая парадигма программирования. Переменные не являются «ящиками», в которые вы вводите и выводите некоторые данные: они ближе к математическому значению переменной, поскольку, когда вы связываете их с некоторыми ограничениями их значений, это навсегда.
Если вернуться к вашему вопросу, ответ - нет, вы не можете избежать привязки какого-либо Output1 к этому. Иногда вы можете вставить подчеркивание, чтобы сказать прологу, что вам не важно это значение, но при этом вы теряете возможность использовать это значение. В вашем примере вы хотели бы сделать что-то вроде этого (в императивном псевдокоде):
var list = ..., item = ...;
doSomething(func(list, item));
Насколько я знаю, в прологе нет другого пути, вы просто должны использовать промежуточные переменные, как и раньше. Единственное улучшение, которое я могу предложить, - это очень тщательно выбирать предикаты и имена переменных.