Necesito entender la diferencia entre predicados y funciones en el contexto de la Lógica de la Forma Clasual para definir el universo Herbrand.
Si tengo p(x) :- q(f(x)) ¿tendría razón al decir que p y q son predicados mientras que f es una función porque está "anidada"? Entonces, si tengo p(x) :- q(x), ¿tanto p como q son predicados y no tengo funciones?
Si esto es incorrecto, ¿cómo puedo distinguir entre un predicado y una función?