Я не думаю, что вы можете, так как объекты Column, Literal и Function не имеют операций для их связывания (и при этом я не вижу никаких классов, кроме Function, которые могут это сделать).
Единственный обходной путь, который я вижу при генерации кода, - это создание хранимой функции:
CREATE FUNCTION plus_one (n INT)
RETURNS INT DETERMINISTIC
RETURN COALESCE(n + 1, 0);
Затем используйте эту функцию вместо объединения:
my $c_a_index_func = Fey::Literal::Function->new('plus_one', $max_a_index_func);
$c_a_index_func->set_alias_name('a_index');