Логика предикатов первого порядка. Основы логики предикатов
Класс задач, решаемых с использованием логики высказываний, очень ограничен. Например, из посылок следующего классического примера – «Все люди смертны» и «Сократ – человек» – интуитивно следует заключение «Сократ смертен». Однако в рамках логики высказываний решить эту задачу не удается. Объясняется это тем, что утверждение в логике высказываний это неделимый объект (атом), а приведенный пример требует анализа внутренней структуры предложения. Логика предикатов первого порядка позволяет выразить большее разнообразие утверждений благодаря тому, что в нее добавлены термы, предикаты и кванторы. Если проанализировать приведенные выше три утверждения, то можно обнаружить, что рассуждения здесь ведутся на некоторой предметной области (множестве людей). «Сократ» является объектом этой предметной области. Кроме того, в первом утверждении есть неявное указание на принадлежность к этой предметной области («если некто принадлежит к множеству людей, значит, он смертен»). Такое неконкретизированное указание объекта предметной области соответствует понятию «переменная», а явное указание «Сократ» – понятию «константа». Принадлежность объекта к предметной области можно задать в виде «логической функции» или предиката. Например, предикат ЧЕЛОВЕК(x) указывает на то, что если x является человеком, то высказывание ЧЕЛОВЕК(x) является истинным, и, соответственно, предикат СМЕРТЕН(x) указывает на то, что x смертен. Здесь формы записи ЧЕЛОВЕК и СМЕРТЕН называются предикатными символами. Выражение «все люди» служит примером квантификации, такая запись символически может быть представлена как ∀ и называется квантором всеобщности (общности). Запись (∀x) читается как «для всех x», «для всякого x», «для каждого x».