Вы находитесь на странице: 1из 4

Обзорная лекция 12.

Логика предикатов

Многие утверждения, имеющие форму высказываний, на самом деле


таковыми не являются, т. к. содержат переменные, конкретные значения
которых не указаны. Поскольку такое утверждение при одних значениях
переменных может быть – истинным, а при других – ложным, ему не может
быть предписано истинное значение. Такие утверждения, примерами которых
являются
𝑷(𝒙): 𝒙 > 𝟔
𝑸(𝒙, 𝒚, 𝒛): 𝒙𝟐 + 𝒚𝟐 ≤ 𝒛𝟐

называются предикатами.
Логика предикатов представляет собой развитие логики высказываний.
Определение. Предикат – повествовательное предложение,
содержащее предметные переменные, определенные на соответствующих
множествах.
При замене переменных конкретными значениями (элементами этих
множеств) предложение обращается в высказывание, т. е. принимает значение
«истина» или «ложь».
Предикат с одной переменной называется одноместным предикатом, с
двумя – двухместным, а предикат, содержащий n переменных, называется n –
местным предикатом.
n – местный предикат – это функция 𝑷(𝒙𝟏 , 𝒙𝟐 , … , 𝒙𝒏 ) от n переменных,
принимающих значения из некоторых заданных предметных областей, так,
что 𝒙𝟏 ∈ 𝑴𝟏 , 𝒙𝟐 ∈ 𝑴𝟐 , … , 𝒙𝒏 ∈ 𝑴𝒏 , а функция P принимает два логических
значения – «истина» и «ложь».
Таким образом, предикат 𝑷(𝒙𝟏 , 𝒙𝟐 , … , 𝒙𝒏 ) является функцией типа

𝑷: 𝑴𝟏 × 𝑴𝟐 × … × 𝑴𝒏 → 𝑩 ,

где множества 𝑴𝟏 , 𝑴𝟐 , … , 𝑴𝒏 называются предметными областями


предиката;
𝒙𝟏 , 𝒙𝟐 , … , 𝒙𝒏 – предметными переменными предиката;
𝑩 = {𝟎; 𝟏} – двоичное множество.
Если предикатные переменные принимают значения на одном
множестве, то 𝑷: 𝑴𝒏 → 𝑩
Пример.
𝑷(𝒙): для 𝒙 = 𝟖 𝒙>𝟔 - истина
𝑸(𝒙, 𝒚, 𝒛): для 𝒙 = 𝒚 = 𝒛 = 𝟐 𝒙𝟐 + 𝒚𝟐 ≤ 𝒛𝟐 - ложь
𝑷(𝒙; 𝒚): 𝒙 имеет домашнего животного 𝒚, где
𝑴𝒙 = {Оля, Руслан, Айгерим} – предметная область
𝑴𝒚 = {Кот, кошка, собака, хомяк} – предметная область
𝑷(𝒙; 𝒚): Оля имеет кошку - истина
𝑷(𝒙; 𝒚): Руслан имеет кошку - ложь
𝑷(𝒙; 𝒚): Руслан имеет собаку - истина и т.д.
Все значения из предметной области, на которых предикат
принимает значение «истина» образуют область истинности предиката
Определение. Областью истинности предиката называется
подмножество 𝑰𝒑 ⊆ 𝑴𝒏 , предметной области предиката, на элементах
которого значение предиката – истинны.

Кванторы

Пусть P(x) – предикат, определенный на M . Высказывание «для всех x


из M P(x) истинно» обозначается ∀𝒙 𝑷(𝒙) .
Множество M не входит в обозначение и должно быть ясно из контекста.
Знак "∀𝒙" называется квантором общности. Заменяет слова – любой, всякий,
для всех, каждый и т.п.
Высказывание «существует такой x из M , что P(x) истинно»
обозначается как ∃𝒙 𝑷(𝒙).
Знак ∃𝒙 называется квантором существования. Заменяет слова –
существует, некоторый, для некоторых и т.п.
Переход от P(x) к ∀𝒙 𝑷(𝒙) или ∃𝒙 𝑷(𝒙) называется связыванием
переменной x , а также навешиванием квантора на переменную x (или на
предикат P(x) ). Переменная, на которую навешан квантор, называется
связанной, в противном случае – свободной.
Пример. Рассмотрим одноместный предикат 𝑷(𝒙): 𝒙 + 𝟓 = 𝟏𝟐
∀𝒙 𝑷(𝒙): 𝒙 + 𝟓 = 𝟏𝟐 – ложь
∃𝒙 𝑷(𝒙): 𝒙 + 𝟓 = 𝟏𝟐 – истина

Навешивать кванторы можно и на многоместные предикаты и вообще


на любые выражения, которые при этом заключаются в скобки.
Выражение, на которое навешивается квантор ∀𝒙 или ∃𝒙 , называется
областью действия квантора.
Навешивание квантора на многоместный предикат уменьшает в нем
число свободных переменных и превращает его в предикат от меньшего числа
переменных.
Рассмотрим двухместный предикат 𝑷(𝒙; 𝒚). К нему можно применить
различные квантовые операции:
∀𝒙∃𝒚𝑷(𝒙; 𝒚), ∀𝒚∃𝒙𝑷(𝒙; 𝒚), ∀𝒙∀𝒚𝑷(𝒙; 𝒚),∃𝒚∃𝒙𝑷(𝒙; 𝒚)
При этом будут получаться новые высказывания.

Пример. Рассмотрим предикат 𝑷(𝒙; 𝒚): "𝒙 делится на 𝒚"


∀𝒙∀𝒚𝑷(𝒙; 𝒚) – ложь
∃𝒚∀𝒙𝑷(𝒙; 𝒚) – истина
∀𝒚∃𝒙𝑷(𝒙; 𝒚) – истина
∃𝒙∀𝒚𝑷(𝒙; 𝒚) – ложь
Предикатные формулы
С помощью логических связок и скобок предикаты можно объединять в
логические формулы – предикатные формулы. Исследование предикатных
формул и способов установления их истинности является основным
предметом логики предикатов. Логика предикатов является важным
средством построения развитых логических языков и формальных систем
(формальных теорий).
В формулах участвуют:
– символы предметных переменных 𝒙; 𝒚; 𝒛; … ;
– символы предикатов;
– логические символы &; ∨; ¬; →; ↔;
– символы кванторов ∀𝒙 и ∃𝒙
𝑷(𝒙; 𝒚)&𝑸(𝒙; 𝒚), 𝑷(𝒙; 𝒚) → 𝑸(𝒙; 𝒚), 𝑷(𝒙; 𝒚) ∨ 𝑸(𝒙; 𝒚), 𝑷(𝒙; 𝒚) ↔ 𝑸(𝒙; 𝒚).

Пример. Найти область истинности предиката, заданного предикатной


формулой 𝑷(𝒙; 𝒚): ((𝒙 + 𝒚) − нечетно)&(|𝒙 − 𝒚| ≤ 𝟏), где 𝒙 = {𝟓; 𝟖; 𝟗},
𝒚 = {𝟒; 𝟕; 𝟖; 𝟏𝟎}.
Решение. Предметная область состоит из 12 пар.
Рассмотрим 3 предиката.
𝑷𝟏 (𝒙; 𝒚): (𝒙 + 𝒚) − нечетно
𝑷𝟐 (𝒙; 𝒚): |𝒙 − 𝒚| ≤ 𝟏
𝑷(𝒙; 𝒚): ((𝒙 + 𝒚) − нечетно)&(|𝒙 − 𝒚| ≤ 𝟏
𝟏) 𝑷𝟏 (𝒙; 𝒚): (𝒙 + 𝒚) − нечетно
x y 4 7 8 10
5 1 0 1 1
8 0 1 0 0
9 1 0 1 1
𝟐) 𝑷𝟐 (𝒙; 𝒚): |𝒙 − 𝒚| ≤ 𝟏
x y 4 7 8 10
5 1 0 0 0
8 0 1 1 0
9 0 0 1 1

3) 𝑷(𝒙; 𝒚): ((𝒙 + 𝒚) − нечетно)&(|𝒙 − 𝒚| ≤ 𝟏


x y 4 7 8 10
5 1 0 0 0
8 0 1 0 0
9 0 0 1 1

Таким образом, область истинности предиката можно задать перечислением


пар, для которых в последней таблице стоит 1 (истина)
𝑰𝒑 = {(𝟓; 𝟒), (𝟖; 𝟕), (𝟗; 𝟖), (𝟗; 𝟏𝟎)}

Вам также может понравиться