This can be paraphrased as `if X is an animal then X eats custard'.
We ought also to provide the informal semantics for eat/2 and animal/1. Let us assume that this can be done.
By the way, we could also, but less satisfactorily, write custard_eater(X):- animal(X).
The relation `loves' holds between any two objects if the second object is related to bergman via the directed_by relation.
Note that nowhere have we said that the first argument of the loves/2 relation should be a person. This is implicit in the original statement and, strictly, ought to be enforced.
The relation `likes' holds between `jim' and some other object if this object is related to `fred' through the `belongs_to' relation.
Again note that the declarative readings for both likes/2 and belongs_to/2 are not provided by this statement.
The relation `may_borrow' holds between the first argument and the second (where the third is the owner of the second) if these two arguments are related via the `need' relation.