Преобразование унарных предикатов
в бинарные. Примеры
С помощью предикатов часто определяют критерии
сортировки или поиска. В зависимости от способа применения предикаты делятся на унарные и бинарные. Учтите, что не любая унарная или
бинарная функция, возвращающая логическую величину, является действительным
предикатом.
Унарный предикат проверяет некоторое свойство одного
аргумента. Типичный пример - функция, используемая в качестве критерия поиска
первого простого числа.
Бинарные
предикаты обычно
сравнивают некоторое свойство двух аргументов. Например, чтобы отсортировать
элементы по нестандартному критерию, программист передает алгоритму простую
предикатную функцию. Это может понадобиться, если, например, элементы не могут
корректно работать с оператором или сортировка должна выполняться по
нестандартному критерию.
Унарные и бинарные предикаты имеют
соответственно один и два аргумента. Фраза «Сократ есть человек» представима
унарным предикатом Человек (Сократ), а «Жак любит Мари» — бинарным Любит
(Жак_2, Мари_4). Любой унарный предикат можно преобразовать в бинарный
следующим образом. Унарный предикат состоит из предикатного имени и значения
своего единственного аргумента. Следовательно, его формат такой:
Предикатное_имя (значение_аргумента). Значение аргумента есть конкретизация
предикатного имени или переменной. Например, Человек (Сократ) указывает, что
имя собственное «Сократ» — конкретизация имени совокупности «человек», а
Человек (х) указывает, что х — человек (не что-либо иное). Фразу «Сократ —
человек» можно представить бинарным предикатом Конкр (Сократ, человек).
Друзья! Приглашаем вас к обсуждению. Если у вас есть своё мнение, напишите нам в комментарии.