Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы логики для бизнес-информатиков. Языки представления знаний. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
переменных, входящих в предикат, будем его называть одноместным,
x
x
x
x
двухместным, трехместным и т. д.
Одноместные предикаты иногда называют предикатами-свой-
ствами, а n-местные при
– предикатами-отношениями. Так, пре-
1n
дикат «Город x является столицей» выражает свойство городов, а пре­дикат «Расстояние между городом x и городом y – 2 тыс. км» – отно­шение между городами. Высказывания принято считать нуль-местными предикатами.
Чтобы превратить предикат в высказывание, достаточно вместо каждой из переменных, входящих в него, подставить какое-нибудь
ее значение. Существует и другой способ превращения предикатов в вы­сказывания.
Пусть, например, дан предикат «Птица x не умеет летать». Пред­ложение «Для всякой птицы x истинно, что x не умеет летать» утвер­ждает, очевидно, то же самое, что предложение «Все птицы не умеют летать», и, следовательно, является ложным высказыванием. Предло жение «Существует такая птица x, что x не умеет летать» равно- значно предложению «Некоторые птицы не умеют летать» и является истинным высказыванием.
Выражение «для всякого x» называется квантором общности по пе­ременной x и обозначается
.
Выражение «существует x такое, что» называется квантором су- ществования по переменной x и обозначается
 .
Вместо слова «всякий» можно употреблять слова «каждый», «лю­бой» и т. п.; вместо «существует» – слова «есть», «найдется», «хотя бы один» и т. п.
()Px
Переход от предиката
()
Px
ванию
называется операцией квантификации предиката
к высказыванию
или просто навешиванием квантора на предикат
()
Px
или высказы-
()Px
. В результате
()Px
квантификации переменная в предикате становится связанной, т. е. сим­волом, на место которого нельзя уже подставлять объекты из некото­рого множества.
-
51
3.2. ФОРМАЛИЗАЦИЯ ПРЕДЛОЖЕНИЙ
x
x
M
Z
х
x
ЕСТЕСТВЕННОГО ЯЗЫКА
При решении задачи формализации сначала следует выбрать уни­версум, содержащий объекты (сущности), о которых говорится в пред­ложении. Выбор универсума в большинстве случаев не является одно­значным, нередко универсум является многосортным.
На следующем шаге определяются предикатные символы для обо­значения свойств объектов (одноместные предикаты) и/или отношений между объектами (многоместные предикаты чтобы введенные предикаты имели смысл для всех элементов универ­сума. Кроме того, для каждого одноместного предиката множество зна­чений этого предиката должно быть собственным непустым подмноже­ством универсума.
Далее проверяется наличие констант, т. е. говорится ли в предложе­нии о конкретных объектах универсума (часто это имена собственные).
Необходимо Для каждого простого предложения составляем отдельную формулу, и все полученные формулы потом соединяем в одно утверждение с помощью логических связок.
Не забываем также, что при формализации предложения естествен­ного языка должна получиться замкнутая формула, иначе она не будет иметь истинностного значения и мы не сможем
Рассмотрим утверждение: «Все бешеные собаки смертельно опасны». В этом предложении утверждается, что если животное бака, причем бешеная, то тельно, если предикат
бака», то предикатом бешеное», а предикатом
то формальная запись этого утверждения будет иметь вид
также проверить, простое предложение или сложное.
‒ смертельно опасное животное. Следова-
()Dx
означает предикат «животное x ‒ со-
()
x
формализуем выражение «животное x ‒
()
x
‒ «животное x ‒ смертельно опасное»,
) универсума. Важно,
проверить перевод.
‒ со-
()& () ().xDx M
Аналогично утверждение «Некоторые старательные студенты получают стипендию» можно записать в виде
()& ()& (),
Px Sx Ox

52
Z х
()Px
x
x
x
где
старательный»;
ограничений, то все они перечисляются через конъюнкцию, а затем надстраивается квантор существования.
цательного и положительного ‒ является отрицательным». Пусть универсум составляет множество вещественных чисел, а предикаты ис­пользуем в традиционной записи:
(0)x
представим в виде терма сколько эквивалентных форм, все они допустимы. Выберем два вари-
анта:
означает «человек x ‒ студент»;
()Ox
‒ «человек x ‒ получает стипендию».
Итак, если на значения переменной накладывается сразу несколько
Теперь рассмотрим утверждение: «Произведение двух чисел ‒ отри-
(0)x
(«число 𝑥 положительно»). Произведение двух чисел x и y
y
. Тогда высказывание будет иметь не-
( 0) ( 0) ( 0)xx yy xy,

()Sx
означает «человек x ‒
(«число x отрицательно»),
( 0) & ( 0) ( 0) .xy x y xy    

Хотя эти две формы и эквивалентны, но вторая, пожалуй, несколько выразительнее и яснее подчеркивает равноправие двух чисел.
Перевод утверждения «Для всякого целого числа есть меньшее це-
лое» можно записать следующим образом:
() ()&()
xZ yyZ y x  .

Заметим, что это утверждение удобнее писать, начиная с внутрен­него квантора, т. е. сначала перевести, что означает «Для шее его натуральное число», а затем расшифровать начало предложе­ния: «для всякого
При переводе утверждений с вложенными кванторами необходимо тщательнейшим образом следить за порядком кванторов и их областью действия. Например, если последнее утверждение истинно, то утвер­ждение
ложно. Оно выражает утверждение естественного языка: «Существует наименьшее целое число». В самом деле, прочтем его. Внутреннее
𝑥».
()&()()yyZ xxZ y x 

53
есть мень-
утверждение показывает, что «всякое целое число 𝑥 больше у». Какое у?
x

x
A
x
x
A
A
x
Пока еще не определено, но, переходя к началу формулы, мы видим, что y должно быть предварительно выбрано. Однако какое бы целое число y ни выбрали, внутреннее утверждение будет ложно. Следова­тельно, такого y не существует.
Наконец, рассмотрим утверждение: «Для любого целого числа есть
большее и меньшее
вить в виде формулы:
yz x Z y Z y x z Z z x   
но лучше всего формализация:
() ()&()&()&(),xxZ yy Z y x zz Z z x  
где каждый квантор относится лишь к тем утверждениям, которые он связывает.
Исключительно важную роль в языке математики играет утвержде­ние: «единственный часто приходится доказывать, что решение задачи единственно).
На самом деле обычно подразумевается не только то, что решение задачи единственно, но и то, что она имеет решение, т. е. доказывается не только единственность, но и существование и единственность объ­екта, удовлетворяющего свойству
Единственность «в чистом виде» выражается следующим образом:
его целое число». Это утверждение можно предста-
( ) ( )&( )&( )&( ) ,
удовлетворяет данному условию А» (например,
.
()& () ( ).
yAx Ay x y  
Заметим, что утверждение « вообще говоря, не предполагает, что оно существует, что задача вообще имеет решение.
Чисто формально предыдущая формула истинна и в том случае, ко­гда х, удовлетворяющего А, вообще нет. Поэтому эту формулу точнее читать «есть не более одного х, удовлетворяющего
Утверждение «существует единственное ражается в форме
() & ()& () ( )
Ax x y Ax Ay x y .
, удовлетворяющее А, единственно»,
()
x
».
()
𝑥, такое, что
x
» вы-

54
Однако это не самая выразительная запись утверждения о един-
x
x
A
A
x
A
x
x
x
x

x
ственности. Гораздо выразительнее
() ( ).
yAy x y  
Итак, то, что существует единственное
()
x
означает, что условие у этому единственному x.
В задачах, где идет речь о количестве каких-то объектов, следует ис­пользовать предикат «равенство».
Общий способ получить утверждение «существует не более
()
ких
, что
x
»:
на самом деле сводится к равенству любого
, удовлетворяющее
n
()
x
та-
,
xxyAy xy xy  
11
nn
Здесь мы не утверждаем, что этих различных x ровно обозначены по-разному, то это отнюдь не показывает, что они прини-
мают различные значения: они могут принимать разные значения, но могут принять и одинаковые.
Итак, мы приходим к необходимости уметь формулировать разли-
y
чие. Если метов, то соответственно различие. Итак, сказать, что есть не менее двух различных решений за-
дачи, очень просто:
Так же просто сказать и то, что их ровно два:
Вот как записывается, что решений не более двух:
yz x y x z y z Ax Ay Az  .
Подобным образом можно написать формулы и для большего числа решений.
означает равенство, неразличимость, совпадение пред-
()& ()()()
yx y zAz z x z y     .

( )&( )&( ) ( )& ( )& ( )

() ( ) ( ) .
()&()&()
yx y Ax Ay

y
, обычно обозначаемое
.
n
: если x и y
, ‒ их
xy
55
3.3. ФОРМУЛЫ ЛОГИКИ ПРЕДИКАТОВ
j
x
Понятие формулы в логике предикатов задается рекурсивно, анало­гично понятию формулы логики высказываний. Однако в отличие от ло­гики высказываний в логике предикатов принято определение формулы начинать с определения сигнатуры.
Определение 24. Сигнатурой будем называть множество, состо-
ящее из предикатных символов и символов констант
1
.
Предикатные символы условимся обозначать прописными буквами латинского алфавита; например:
указывает
арность (т. е. размерность) предикатного символа. Сим-
-n
(1) ( 2)
, , ,
PQ R
(5)
где верхний индекс
i
волы констант условимся обозначать строчными буквами латинского
, , .cde
алфавита; например: ческой буквой
буквами
(сигма). Формулы условимся обозначать греческими
(фи),  (пси) и  (кси).
Сигнатуру же всегда будем обозначать гре-
Сигнатуру можно понимать как «кирпичики», из которых будут строиться различные формулы. Так, например, запись
(2) (3)
, , ,PScc
мы можем использовать один двухместный предикат трехместный предикат
Определение 25. Формулой сигнатуры
Для любого предикатного символа
1.
(, , )
Pt t
1
является формулой, где каждый символ
n
константой сигнатуры
означает, что при построении различных формул
12
(, , )Sx x x
123
и две константы
называется:
P 
и
c
c
1
2
()n
является либо
t
i
 , либо некоторая предметная переменная
)(,Px x
, один
12
.
выражение
. Формулы такого вида будем называть атомарными. Все переменные в атомарных формулах являются
свободными.
1
В рамках данного курса мы рассматриваем сигнатуры, не содержащие
функциональных символов. Это объясняется тем, что использование функ­циональных символов, с оной стороны, очень сильно усложняет формали­зацию предметной области в виде алгебраической системы, а с другой сто­роны, мы всегда можем рассматривать n-местную функцию как (n + 1)-мест­ный предикат.
56
2. Если и – формулы сигнатуры , то выражения вида
x
x
x
x
x
x
x
x
x
, ( ), ( & ), ( ), ( )
также являются формулами.
Если
3.
входящая в формулу
также являются формулами, в которых переменная
– формула сигнатуры  и x – предметная переменная,
свободно, то выражения вида
( ), ( )
xxx 
становится
связанной.
Других формул нет.
4.
Заметим, что формулы, построенные согласно определению 25, мо­гут иметь переменную, которая одновременно является и свободной, и связанной. Чтобы избежать этой коллизии, введем понятие «вхождение переменной в формулу» и уточним понятие свободной и связанной пе­ременной.
Определение 26. Вхождением переменной в формулу называется
вхождение этой переменной в какой-либо предикат этой формулы. Вхождение называется
связанным, если переменная находится в обла-
сти действия квантора по этой переменной, иначе вхождение называ-
свободным. Переменная, имеющая хотя бы одно свободное вхож-
ется дение в формулу, называется
ной
. Формула без свободных переменных называется предложением.
свободной, иначе она называется связан-
Так, например, формула
(, )& ( , , ) (, , )
Px x Sx c x x xSx x c

112 211 12122
имеет три вхождения переменной (рис. 7). Все вхождения переменной ременная
– связанная. Переменная 𝑥имеет два свободных вхожде-
1
и три вхождения переменной
1
‒ связанные, следовательно, пе-
1
2
ния и одно связанное, следовательно, является свободной.
(, , , )
Запись переменные ство свободных переменных формулы
xx
12
,,,
xx
12
означает, что формулаимеет свободные
n
. Через
n
FV

57
будем обозначать через множе-
т. е. в нашем примере
,
() { , , , }
F
x
x
x
x
x
x
x
Vxxx
12
. Если же
n
()FV 
, то формула является
предложением.
Рис. 7. Формула логики предикатов
Заметим, что если в рассматриваемой формуле переменная имеет связанное вхождение, то существует подформула, где эта переменная является связанной. Так, например, для формулы, показанной на рис. 7,
в подформуле
xSx x c
12 122
)(, ,
переменные
и
являются связан-
1
2
ными.
Свободные переменные носят глобальный характер, т. е. их означи­вание происходит вне данной формулы.
Связанные же переменные носят локальный характер, поэтому их можно заменить на любые другие переменные. Нередко замена связан­ных переменных производится для того, чтобы каждая переменная в рассматриваемой формуле имела либо только свободные, либо
только связанные вхождения. Так, например, для формулы, показанной на рис. 7, можно выполнить следующие замены переменных:
(, )& ( , , ) (, , ).
Px x Sx c x x xSx x c
112 211 34342
Эта замена показывает, что переменные
,
и
1
3
не только свя-
4
занные, но их означивание (внутри формулы) ведется независимо друг от друга.
58
3.4. МОДЕЛИ ЛОГИКИ ПРЕДИКАТОВ
A
x
x
x
x
Формулы логики предикатов, так же как и формулы логики выска­зываний, можно классифицировать на тождественно истинные, тожде­ственно ложные, выполнимые и опровержимые. Однако проверка на то, является ли формула тождественно истинной (т. е. логически истин­ной), ‒ не такая простая, как в логике высказываний. В логике предика­тов истинность формул зависит
от интерпретации предикатных и кон­стантных символов и от означивания переменных конкретными значе­ниями. Поэтому вводятся понятия модели и истинности формулы на мо­дели. Для обозначения моделей будем использовать прописные буквы латинского алфавита, набранные в готическом шрифте:
A , B , M ,
N
.
Определение 27. Моделью сигнатуры
A
называется основным множеством модели A , а
где
тацией сигнатуры
на множестве A.
, A
В качестве примера рассмотрим сигнатуру
(, )
Pxc
. Построим модель
M 
,
ством будет множество целых чисел
называется пара
A
,
A
– интерпре-
(2)
{,}Pc
M
, в которой основным множе-
. Интерпретацию сигнатуры
и формулу
зададим следующим образом:
MM
Тогда формула
(, )
Pxc
, ; ( 0).Pxyxyc
превратится в выражение
(0)xx
«Среди целых чисел найдется число, которое меньше нуля».
Очевидно, что это утверждение истинно. Поэтому мы будем гово-
,
рить, что формула
,
вать
PxcM
Pxc
.
Теперь рассмотрим модель
торой является множество натуральных чисел сигнатуры
задается аналогичным образом:
истинна на модели M и будем записы-

N
, основным множеством ко-
N 
,
. Пусть интерпретация
, т. е.
NN
, ; ( 0).Pxy xyc
59
Тогда полученное выражение
x
x
x
x
x
B
x
(0)xx
можно прочитать следую-
щим образом:
«Среди натуральных чисел найдется число, которое меньше нуля».
Нетрудно заметить, что в этом случае мы получим ложное высказы-
вание. Поэтому будем говорить, что формула
дели
N
и будем записывать
N
(, )
Pxc
.
Pxc
ложна на мо-
(, )
Мы можем, например, рассмотреть модель натуральных чисел
N 

N
с интерпретацией сигнатурных символов:
,
NN
, ; ( 5).Pxy xyc
Тогда нетрудно проверить, что
N
(, ).
Pxc
Рассматриваемая модель не обязательно должна быть числовой.
A
Например, мы можем рассмотреть модель
A
, где A – это мно-
, A
жество студентов, а сигнатура интерпретируется следующим образом:
A
,() Pxy
«Студент х учится в одной группе
A
« c
Петров».
Тогда формула
со студентом у»;
(, )
Pxc
превращается в высказывание:
«Среди студентов найдется такой студент, который учится
в одной группе с Петровым».
Очевидно, что
PxcA
, даже если можно представить такую
(, )
ситуацию, что в группе остался только один Петров, то всегда можно сказать, что он учится сам с собой в одной группе.
Теперь рассмотрим модель
B , где
B
, B
– также множество
студентов, а сигнатура интерпретируется следующим образом:
BB
, « »; « »()Pxy Студент x списал работу у студента ycИванов
(, )
Тогда формула
Pxc
превращается в высказывание:
.
«Среди студентов найдется такой студент, который
списал работу у Иванова».
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]