Predicates are functions that take one or more arguments and return a truth value, typically true or false, based on the properties or relationships of those arguments. They form the backbone of first-order logic (FOL) by allowing for the expression of statements about objects in a domain. In higher-order logic (HOL), predicates become even more powerful as they can take other predicates as their arguments, enabling more complex expressions and reasoning.