Как правило, предикат - это функция, которая принимает один или несколько аргументов и возвращает логическое значение, указывающее, является ли какое-либо утверждение об аргументах истинным или ложным.
Примерыпредикаты на естественном языке могут быть «синего цвета», «длиннее двух метров», «принадлежат MC Hammer», «находятся под землей».
При выполнении поиска в некоторой системе, например в файловой системетаблица базы данных, график - возможно, сама система обеспечивает определенные встроенные поиски (файловая система может иметь встроенный поиск по имени файла; граф может иметь встроенный поиск по расстоянию от данного узла);или, для большей гибкости, может быть способ поиска с помощью пользовательской функции предиката.
В зависимости от деталей, эту пользовательскую функцию предиката можно передать в виде дерева выражений или указателя на некоторый фактический исполняемый код.или выражение запроса для анализа.Все, что требуется, - это то, что система имеет некоторый способ вызывать предикат для каждого элемента-кандидата;и что предикат возвращает истину или ложь для каждого элемента-кандидата.
Результатами поиска будут именно те элементы, для которых пользовательский предикат возвращает истину.