Главная Учебники - Разные Лекции (разные) - часть 50
Министерство Образования Российской Федерации Поморский Государственный Университет им. М. В. Ломоносова ПО МАТЕМАТИЧЕСКОЙ ЛОГИКЕ НА ТЕМУ: Логика предикатов с одним переменным
Выполнил студент II-го курса математического факультета Бережной Андрей Витальевич Коряжма 1997 СОДЕРЖАНИЕ Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Основные понятия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 §1. Логика предикатов с одним переменным . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 §2. Практика по решению проблемы разрешимости формул, содержащих предикаты от одного переменного . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 ВВЕДЕНИЕ Проблема разрешимости — эта проблема ставится для формул исчисления предикатов, лишённых символов постоянных предметов
и символов индивидуальных предикатов.
В последующем изложении предполагается, что рассматриваемые формулы таковы (если не сделано специальных оговорок). Каждая такая формула представляет собой определённое утверждение, истинное или ложное, когда оно относится к определённому полю M. Если такая формула истинна для некоторого поля
M и некоторых предикатов, на нём определённых, мы будем называть её выполнимой.
Если формула истинна для данного поля
M и для всех предикатов, определённых на
M, мы будем называть её тождественно истинной для поля
M. Если формула истинна для всякого поля
M и для всяких предикатов, будем называть её тождественно истинной или просто истинной.
Формула называется ложной или невыполнимой, если ни для какого поля ни при каких замещениях предикатов она не является истинной. Легко показать, что если формула U тождественно истинна, то формула Постановка проблемы разрешимости для логики предикатов аналогична постановке этой проблемы для алгебры высказываний. Её решение и является целью данной курсовой работы. Итак, проблема ставится следующим образом: дать эффективный способ для определения
— является ли данная формула выполнимой или нет.
Умея решать вопрос о выполнимости, мы тем самым сможем решать и вопрос об истинности любой формулы. В самом деле, если формула U истинна, то формула Современные исследования пролили свет на природу этих затруднений. В настоящее время представляется достаточно ясным, что решение этой проблемы в указанном смысле вообще невозможно. Иначе говоря, не может существовать никакого конструктивного правила, которое позволяло бы определять для любой формулы логики предикатов, является ли она тождественно истинной или нет. Для некоторых частных типов формул, однако, проблема разрешимости решается. Мы рассмотрим наиболее важный тип формул, для которых решение проблемы разрешимости может быть осуществлено, это формулы логики предикатов, зависящие от одного переменного. Основные понятия Пусть M - некоторое множество предметов и a
, b
, c
, d
- какие-то определённые предметы из этого множества. Тогда высказывания об этих предметах мы будем обозначать в виде P(a)
, Q(b)
, R(c, d)
и т.д. P(a)
обозначает высказывание о предмете a
, Q(b)
- высказывание о предмете b
, R(c, d)
- высказывание о предметах c
и d
и т.д. Такие высказывания могут быть как истинны, так и ложны, обозначаемые соответственно символами И и Л. Эти значения ставятся в соответствие определённым предметам или группам предметов. Пусть M - произвольное непустое множество, а x
представляет собой произвольный предмет из этого множества. Тогда выражение F(x)
обозначает высказывание, которое становится определённым, когда x
замещено определённым предметом из M. F(a)
, F(b)
, ... уже представляют собой вполне определённые высказывания. Например, если M натуральный ряд, то F(x)
может обозначать: " x
есть простое число". Это неопределённое высказывание становится определённым, если x
заменить некоторым числом, например: "3 простое число", "4 простое число" и т. д. Пусть S(x,y)
обозначает: " x
меньше y
". Это высказывание становится определённым, если x
и y
заменить числами: "1 меньше 3", "5 меньше 2" и т. д. Так как с нашей точки зрения каждое определённое высказывание представляет собой И или Л, то выражение F(x)
означает, что каждому предмету из M поставлен в соответствие один из двух символов И или Л. Иначе говоря, F(x)
представляет собой функцию, определённую на множестве M и принимающую только два значения И и Л. Таким же образом неопределённое высказывание о двух и более предметах H(x, y)
, G(x, y, z)
и т. д. предвтавляет собой функцию двух, трёх и т. д. переменных. При этом переменные x
, y
, z
пробегают множество M, а функция принимает значения И и Л. Эти неопределённые высказывания, или функции одного или нескольких переменных, мы будем называть логическими функциями или предикатами.
Предикатом с одним переменным можно выразить свойство
предмета, например " x
есть простое число", " x
- прямоугольный треугольник" и т.д. Все понятия, которые мы будем вводить, относятся всегда к некоторому произвольному множеству M, которое мы будем называть полем
. Элементы этого поля будем обозначать малыми латинскими буквами (иногда эти буквы мы будем снабжать индексами). Буквы конца латинского алфавита x
, y
, z
, u
, v
, x
1
, x
2
, ... обозначают неопределённые предметы поля. Их мы будем называть предметными переменными
. Буквы начала алфавита a, b, c, a
1
, a
2
, ... обозначают определённые предметы поля. Их мы будем называть индивидуальными предметами
или предметными постоянными
. Большими латинскими буквами A
, B
, ..., X
, A
1
, A
2
, ... мы будем обозначать переменные, принимающие значения И и Л. Их мы назовём переменными высказываниями
. Мы будем также рассматривать и постоянные высказывания. Их мы будем также обозначать большими латинскими буквами, как-нибудь отмеченными или просто с дополнительной оговоркой. Большие латинские буквы и символы предикатов как индивидуальных предметов, так и от предметных переменных мы будем называть элементарными формулами
. Мы будем говорить, что в формулах (
"х)
U(х)
и (
$х)
U(х)
кванторы (
"х)
и (
$х)
относятся к переменному х
или что переменное х связано соответствующим квантором.
Предметное переменное, не связанное никаким квантором, мы будем называть свободным переменным.
Формулы, в которых из операций алгебры высказываний имеются только операции Приведённая формула называется нормальной
, если она не содержит кванторов или если при образовании её из элементарных формул операции связывания квантором следуют за всеми операциями алгебры высказываний. Если две формулы U и B, отнесённые к некоторому полю M, при всех замещениях переменных предикатов, переменных высказываний и свободных предметных переменных соответственно индивидуальными предикатами, определёнными на M, индивидуальными высказываниями и индивидуальными предметами из M, принимают одинаковые значения И или Л, то мы будем говорить, что эти формулы равносильны на поле
M. Если две формулы равносильны на любых полях M, то мы будем их называть просто равносильными
. Нормальную формулу, равносильную некоторой формуле U, мы будем называть нормальной формой формулы
U. §1. Логика предикатов с одним переменным Мы будем рассматривать формулы логики предикатов, содержащие предикаты, которые зависят только от одного переменного. Логика, в которой употребляются только такие выражения, соответствует той, которая описана Аристотелем и вошла как традиционный элемент в систему гуманитарного образования. Известные формы высказываний этой логики и формы умозаключений, так называемые «модусы силлогизмов», выражаются полностью в символике логики предикатов от одного переменного. Теорема. Если формула логики предикатов, содержащая только предикаты от одного переменного, выполнима на некотором поле
M, то она выполнима на поле
Пусть формула U(A1
, ..., An
), содержащая только символы предикатов A1
, ..., An
, каждый из которых зависит от одного переменного, выполнима на некотором поле M. эту формулу мы можем предполагать представленной в нормальной форме, а все предметные переменные в ней связанными. В самом деле, какова бы ни была формула U, мы можем, произведя над ней преобразования, привести её к виду, в котором все кванторы предшествуют остальным символам формулы, при этом состав её предикатов и предметных переменных не изменяется. Если в U есть свободные предметные переменные, то можно связать их квантором общности. Итак, допустим, что U – нормальная формула. Тогда мы можем представить её следующим образом: (s
x
1
)(s
x
2
)...(s
xp
) B(A
1
, ..., An
, x
1
, ..., xp
), где каждый из символов (s
xi
) обозначает квантор ("xi
) или ($xi
), а формула B(A
1
, ..., An
, x1
, ..., xp
) кванторов не содержит. В формуле B(A
1
, ..., An
, x
1
, ..., xp
) все переменные x
1
, ..., xp
входят в предикаты A
1
, ..., An
, и её можно записать в виде B(A
1
(), ..., An
( где i
1
, ..., in
– числа от 1 до p
. Однако, будет удобнее пользоваться выражением B(A
1
, ..., An
, x1
, ..., xp
), если иметь в виду, что B является логической функцией предикатов Ak
, а каждый предикат Ak
зависит от какого-то одного переменного . Покажем, что если для некоторого поля M существуют индивидуальные предикаты ,..., , для которых формула U(,..., ) истинна, то эта формула истинна и на некотором подмножестве этого поля, содержащем не более элементов, так как иначе наше утверждение тривиально. Разобьём элементы множества M на классы следующим образом. Для каждой последовательности, содержащей n символов И
и Л
в произвольном порядке (И
, Л
, Л
, ..., И
,), существует часть (может быть, пустая) множества M, содержащая те и только те элементы x
, для которых последовательность значений предикатов (x
), (x
), ..., (x
) совпадает с данной последовательностью символов И
и Л
. Обозначим через 1
, 2
, ...,n
последовательность символов И и Л, где i
представляет собой И
или Л
, а соответствующий этой последовательности класс элементов x
обозначим , , ..., . Некоторые из этих классов могут оказаться пусты, так как может случиться, что для некоторой последовательности 1
, 2
, ...,n
не существует такого элемента, для которого предикаты , , ..., принимают соответствующие значения 1
, 2
, ...,n
. Вместе с тем каждый элемент множества M принадлежит одному из классов , и различные классы общих элементов не имеют. Число всех классов (пустых и непустых) равно числу последовательностей 1
, 2
, ...,n
, т. е. . Следовательно, число q непустых классов не превышает . Выберем из каждого непустого класса по одному элементу и обозначим эти элементы a
1
, a
2
, ..., a
q
. Множество всех этих элементов обозначим Легко видеть, что имеет место следующая равносильность: (х
) ~ ((х
)). Действительно, (x
) принадлежит тому же классу , что и x
. Но, по определению, для элементов одного и того же класса каждый предикат принимает одно и то же значение. Отсюда следует, что если в формуле U(, ..., ) для каждого предметного переменного t
заменить каждое выражение (t
) через ((х
)), то формула U(, ..., ) перейдёт в формулу Пусть R
(x, y, ..., u
) – предикат, определённый на поле M. Введём обозначение
Под этим выражением мы будем понимать предикат, зависящий от y, z, ..., u
(или высказывание, если, y, z, ..., u
отсутствуют) и принимающий значение И
, когда R
(y, z, ..., u
) имеет значение И
для данных y, z, ..., u
и для всех x
, принадлежащих полю R
(x, y, ..., u
), которое представляет собой предикат от y, ..., u
и принимает значение И
, когда R
(x, y, ..., u
) имеет значение И
для y, ..., u
и по крайней мере для одного значения x
из поля
то получим формулу, отнесённую к полю ("x
) R
((х
), y, ..., u
) равносильно выражению
Пусть ("x
) R
((х
), y, ..., u
) имеет значение И.
В таком случае R
((х
), y, ..., u
) имеет значение И
для данных y, ..., u
и для каждого x
. Но так как функция (х
) пробегает всё поле Аналогичным образом можно показать, что выражения () R
((х
), y, ..., u
) и () R
(x, y, ..., u
) также равносильны. Рассмотрим формулу U(, ..., ), которую можно представить в форме (s
x1
)(s
x2
)...(s
xp
) B(, ..., , x
1
, ..., xp
). B(, ..., , x
1
, ..., xp
) представляет собой предикат, определённый на поле M и зависящий от p
переменных x
1
, ..., xp
. Каждое из этих переменных входит в формулу B только через предикаты , ..., . С другой стороны, мы видели, что предикаты (х
) и ((х
)) равносильны. Поэтому если в формуле B(, ..., , x
1
, ..., xp
) мы заменим xi
на (х
i
), то получим равносильное выражение: B(, ..., , x
1
, ..., xp
) ~ B(, ..., ,(x
1
), ..., (xp
)). Отсюда следует, что (s
xp
) B(, ..., , x
1
, ..., xp
) ~ (s
xp
) B(, ..., , (x
1
), ..., (xp
)). Далее можно заключить, что (s
xp
) B(, ..., , (x
1
), ..., (xp
)) ~ ~ B(, ..., , (x
1
), ..., (xp
-1
), xp
). Рассуждая аналогичным образом, мы получим (s
xp
-1
) (s
xp
) B(, ..., , x
1
, ..., xp
-1
,
xp
) ~ ~ B(, ..., , (x
1
), ..., (xp
-2
), xp
-1
, xp
) и, наконец, придём к следующему: (s
x1
)(s
x2
)...(s
xp
) B(, ..., , x
1
, ..., xp
) ~ ~ B(, ..., , x
1
, ..., xp
). Правая часть последней равносильности, согласно смыслу символа , представляет не что иное, как формулу (s
x1
)...(s
xp
) B(, ..., , x
1
, ..., xp
), отнесённую к полю Таким образом, мы доказали, что формула U(, ..., ) сохраняет своё значение, если её отнести к полю С л е д с т в и е. Если формула
U, содержащая только предикаты, зависящие от одного переменного, является тождественно истинной для всякого поля, не превышающего
элементов, где
n
– число предикатов в
U, то формула
U тождественно истинна
(т. е. истинна для любого поля). В самом деле допустим, что U не является тождественно истинной формулой. В таком случае её отрицание §2. Практика по решению проблемы разрешимости формул, содержащих предикаты от одного переменного Доказанная (в предыдущем параграфе) теорема позволяет решать проблему разрешимости для формул, содержащих только предикаты, зависящие от одного переменного. Из следствия видно, что для того, чтобы установить, является ли формула U тождественно истинной или нет, достаточно проверить, является ли она тождественно истинной для всякого поля, содержащего не более чем элементов. Заметим, что достаточно проверить, является ли данная формула U тождественно истинной на поле, состоящем ровно из элементов. Это следует из того, что для формул рассматриваемого типа имеет место следующее: если формула U тождественно истинна на некотором поле, то она тождественно истинна на всякой его части. Рассмотрим произвольное поле, содержащее ровно элементов: , , ..., . Легко видеть, что всякая формула, имеющая вид: ("x
) B(x
), отнесённая к данному полю, равносильна формуле B() & B() & ... & B(). А формула, имеющая вид: (x
) B(x
), равносильна формуле B() B() ... B(). В таком случае произвольная формула U, отнесённая к полю {, ..., }, равносильна формуле Заметим, что формула алгебра высказываний Разберём это конкретно на примерах. П Р И М Е Р 1
: Итак, пусть дана формула U, имеющая вид: ("x
)[P
(x
) отнесённая к некоторому полю L. Для того, чтобы установить тождественную истинность этой формулы, нам достаточно проверить, является ли она тождественно истинной на поле, содержащем ровно элементов (см. выше). В данном случае число предикатов (n
) равно 2, т.е. L может быть представлено как { a
1
, a
2
, a
3
, a
4
}. Легко видеть, что формула U равносильна: ("x
)[P
(x
) Таким образом, П Р И М Е Р 2
: Доказать, что формула U, отнесённая к некоторому полю L, представленная как [("х
)( является тождественно истинной. Для этого она должна быть тождественно истинной на поле, содержащем ровно элементов. В данном случае n
= 2, т.е. L можно опять определить как { a
1
, a
2
, a
3
, a
4
}. Применяя равносильные преобразования над U, можем заключить её равносильность формуле: ($х
)[( Легко видеть, что Формула 0 0 1 0 1 0 1 1 1 0 1 0 0 1 1 1 1 0 1 1 Таким образом, формула ( ЛИТЕРАТУРА П. С. Новиков, “Элементы математической логики”, государственное издательство физико-математической литературы, М., 1959 |