> (NULL if the multirange is empty has no lower bound).
is missing "or" and should be:
> (NULL if the multirange is empty or has no lower bound).
Good catch! I checked the descriptions for "upper(anymultirange)", "lower(anyrange)" and "upper(anyrange)", and they are all correct. We should fix this one.