Предикаты и операции над ними

advertisement
Лекция №8.
Алгебры высказываний. Предикаты и операции над ними.
§8.1. Основные логические операции и их свойства.
В математической логике изучаются высказывания и различные и связи между ними. При
этом понятие высказывания считается основным, неопределяемым понятием. В качестве
пояснения говорят лишь, что высказывание – это утверждение, относительно которого известно,
истинно оно или ложно.
Если высказывание а истинно или ложно, то говорят, что оно имеет значение «и» или «л»
и пишут
аи или ал.
Высказывания а и b, имеющие одинаковые значения, называются равносильными, что
обозначается в виде
аb
Очевидно, что отношение равносильности высказываний является отношением
эквивалентности на любом множестве высказываний М, и потому М разбивается на два класса
высказываний – на класс истинных и класс ложных высказываний.
В обычной речи мы из определенных высказываний а, b с помощью различных связок
можно образовывать новые высказывания, например «а и b» «а или b» «если а то b»,
«неверно, что а». В математической логике эти высказывания обозначаются в виде
ab (ab), ab, a->b,a (a)
и называются конъюнкцией, дизъюнкцией, импликацией и отрицанием высказывания а.
Таблица 8.1.1
a
и
и
л
л
b
и
л
и
л
ab
и
л
л
л
ab
и
и
и
л
a->b
и
л
и
и
a
л
л
и
и
В высказываниях ab, ab, a и b называются членами, или компонентами,
соответственно конъюнкции и дизъюнкции ; в высказывании а->b а называют посылкой, b –
заключением импликации.
Обозначим через  = {и, л}. Тогда таблица 8.1.1 может служить определением операций
, , ->, на множестве .
При этом операции , , обладают следующими свойствами:
1)
Операции ,  коммутативны, ассоциативны, идемпотентны, дистрибутивны одна
относительно другой и связаны законами поглощения
a(ab)a,
a(ab)a;
2)
Операция отрицания
законами де Моргана
–
_
инволютивна (т.еа = а) и связана с операциями , 
___
___
аb  а b, аb = а b
и соотношениями
а а  л, а а и.
Отсюда следует, что алгебра (, , ) является булевой алгеброй. В ней роль 1 и 0
играют соответственно элементы и, л.
Определение 8.1.2. Двухэлементная булева алгебра (, , ) называется алгеброй
высказываний.
Из таблицы 8.1.1 видно, что импликация (->) также являются операцией на множестве  и
обладает рядом свойств, связывающих её с другими операциями:
a -> b b ->a (закон контрапозиции),
a -> (b -> a)  и,
ab -> b  и,
a -> b a  b и другие.
§ 8.2. Предикаты и операции над ними.
Пусть М – произвольное непустое множество, и n 
декартова степень множества М.
N  {0}. Мn — n-нная
Определение 8.2.1. Любое отображение
Р: Мn -> 
называется n-местным предикатом на множестве М.
n-местный предикат, содержащий переменные x1, …, xn обозначим через Р(x1, …,xn).
Переменные x1, …,xn принимают значения из множества М.
Если  – значение предиката Р(x1,…,xn) при x1 = a1 , …,
xn = an, то будем писать
P(a1, …, an) = 
Пример 8.2.2.
M = N, n = 1.
Тогда предложение «Х есть простое число» есть 1-местный предикат на множестве N.
Обозначим это предложение через Р(х). Тогда Р: N -> ,
где
Р(х) =  и, если х простое число,
 л, если х – не является простым числом.
Пример 8.2.3.
M = N, n = 3.
Тогда предложение
«Число z является суммой чисел x, y»
есть 3-местный предикат на множестве N.
Обозначим это предложение через P(x,y,z)
Тогда P: N3 -> .
P(x,y,z) =  и, если z = x + y,
 л, если z  x + y
Замечание 8.2.4. Любой n-местный предикат Р(x1, …, xn) на множестве М при фиксации
переменных x1, …, xn превращается в высказывание.
Замечание 8.2.5. Под 0-местным предикатом понимается произвольное высказывание.
При этом нуль-местных предикатов ровно два – истинный и ложный.
Множество М0 - одноэлементно, (содержит единственную последовательность элементов
множества М длины нуль).
Поэтому М0 -> Ω отождествляются с элементами множества Ω (поэтому нуль-местных
предикатов ровно два – истинный и ложный).
Замечание 8.2.6. По n-местному предикату Р(x1, …, xn) естественным образом определяется
n-арное отношение R на множестве М:  (a1, …, an)  Мn положим
(a1, …, an)  R  Р(a1, …, an)  и.
Тем самым устанавливается взаимооднозначное соответствие между множествами n-арных
отношений и всех n-местных предикатов на множестве М.
В связи с этим множество М с системой определенных на нем предикатов  называется,
как и множество М с системой отношений, моделью сигнатуры  и обозначается М().
Опишем некоторые способы, позволяющие получать из одних предикатов на множестве М
другие предикаты и там же на множестве М.
1. Пусть Р(x1, …, xn) произвольный предикат на М. Заменив в нем х1 некоторым
элементом а  М, мы получим новый, (n-1)-местный предикат на М, который будем
обозначать в виде
Р(а, x2, …, xn)
или каким-либо иным образом, например
q(x2, …, xn).
Аналогично, новые предикаты можно получать из предиката Р(x1, …, xn), заменяя в нем
какую либо другую переменную или даже несколько переменных элементами из М. Ясно, что
заменив к переменных, получим (n-к)-местный предикат .
Пример 8.2.7.
Рассмотрим 3-местный предикат
P(x, y, z) =  и, если z = x + y,
 л, если z  x + y,
на множестве N. Заменив х на 2 получим новый 2-местный предикат P(2,y,z)
P(2, y, z) =  и, если z = 2 + y,
л, если z  2 + y,
который можно записать, например, в виде «Число z на две единицы больше числа y».
2. Пусть Р(x1, …, xn) - произвольный предикат на множестве М и n  2. Заменим х1 на
х2 (или, как говорят, отождествим переменные х1, х2). В результате получим (n-1)-местный
предикат
Р(x1, х2, х3, …, xn).
Аналогично можно получить из предиката Р(x1, …, xn) новые предикаты, отождествляя
какие-либо другие переменные.
Пример 8.2.8.
Отождествляя переменные х и у в предикате из примера 8.2.7, получим 2-местный предикат
P(у, y, z) =  и, если z = 2y,
л, если z  2y,
на множестве N. Этот новый предикат можно записать, например, в виде предложения «Число z в
два раза больше числа у».
3. Учитывая связь понятия предиката с понятием высказывания, можно определить
логические операции для предикатов. Если Р – n-местный предикат, а q – m-местный предикат, и
переменные, входящие в Р, не входят в q, то через Pq обозначим (m+n)-местный предикат,
значение которого при конкретных значениях переменных равно дизъюнкции соответствующих
значений предикатов P и q.
Аналогично определяются конъюнкция и импликация предикатов, а также отрицания
предиката.
4. Кроме операций , , ->, для предикатов на множестве можно определить еще
логические операции навешивания кванторов всеобщности и существования.
Рассмотрим n-местный предикат Р(x1, …, xn) на множестве М. Добавив к нему фразу
«Для всех х1» или «Для всякого х1», получим новое предложение, которое обозначим в виде
 x1 Р(x1, …, xn).
(8.2.9)
Из построения этого предложения видно, что при замене в нем переменных х2,…,хn
соответственно элементами а2, …, аn получится высказывание
 x1 Р(x1,а2, …, аn),
которое истинно в том и только том случае, когда высказывание Р(а, а2, …, аn) истинно при
любом а  М. Таким образом, (8.2.9) является (n-1)-местным предикатом. При этом говорят, что
предикат (8.2.9) получен из предиката Р навешиванием квантора всеобщности по переменной
х1. Отметим, что квантор всеобщности  можно навешивать и по другим переменным.
Добавляя перед предикатом Р(x1, …, xn) фразу «Существует х1, такое что», получим
новое предложение, которое обозначается в виде
 x1 Р(x1, …, xn)
(8.2.10)
Подставив в него элементы а2, …, аn вместо x2, …, xn, получим высказывание
 x1 Р(x1,а2, …, аn),
которое истинно в том и только том случае, когда высказывание Р(а, а2, …, аn) истинно хотя бы
при одном а из М. Следовательно, предложение (8.2.10) есть (n-1)-местный предикат на М.
Символ  называется квантором существования, а о предложении (8.2.10) говорят, что
оно получено из предиката Р(x1, …, xn) навешиванием квантора существования по переменной
х1. Квантор существования  можно навешивать и по другим переменным.
Пример 8.2.11.
Пусть Р(х, у) есть предикат на N
P(x, y) =
 и, если x делит y,
л, если x не делит y,
тогда предложение
у Р(х, у)
зависит только от переменной х.
При х = 1 оно принимает значение «и», т.к. 1 делит любое натуральное число. При любом
другом значении х из N оно принимает значение «л», т.е.
у P(x, y) 
 и, если x = 1,
л, если x  1,
Предложение
х P(x, y)
зависит только от переменной у и принимает значение «л» при любом значении у, поскольку в N
не существует чисел, делящихся на все натуральные числа , т.е.
х P(x, y) = л
Пример 8.2.12.
Р(х, у) – то же самое, что и в примере 8.2.11, тогда
х P(x, y)  и
зависит от у и принимает значение «и» для всех значений у.
Аналогично
у P(x, y)  и
Для всех значений х.
Лекция №9. Исчисление предикатов.
§9.1 Общее понятие о логическом исчислении.
В настоящее время большинство математических теорий строится дедуктивно. В основу
теории кладется какое-либо достаточно хорошо обозримое множество основных понятий и
утверждений, называемых аксиомами. Все остальные понятия определяются через основные или
уже до этого определенные понятия, а все утверждения теории выводятся, как говорят, логически
из аксиом или уже до этого доказанных утверждений. В любой такой теории естественно
возникают вопросы:
- всякое ли утверждение, сформулированное в терминах данной теории, можно доказать
или опровергнуть (вопрос о полноте);
- нельзя ли в этой теории доказать какое-либо утверждение и его отрицание (вопрос о
непротиворечивости) и др.
такие вопросы можно считать корректными лишь в том случае, если будут точно
определены понятия утверждения, сформулированного в терминах данной теории, и понятие
доказательства. В ответ на такие потребности математики и возникли различные логические
исчисления, призванные форматировать те или иные фрагменты математических теорий, а также
доказательства в этих теориях.
Каждое логическое исчисление характеризуется:
1) набором используемых в нем символов, или алфавитом;
2) правилами построения из алфавита осмысленных утверждений, или формул;
3) некоторым фиксированным наборам формул, называемым системой аксиом;
4) наборами правил.
Алфавит, правила образования формул и само множество формул образуют язык
исчисления, а правила преобразования формул образуют синтаксис исчисления.
Язык логического исчисления должен выбираться так, чтобы с его помощью можно было
записать, или формализовать, возможно большее число утверждений. Разные формальные языки
отличаются друг от друга широтой охвата формализованных в них утверждений, или
выразительностью, а также ориентации на изучение той или иной теории.
Аксиомы и правила вывода логического исчисления позволяют выделить из множества всех
формул так называемые доказуемые формулы, или теоремы. К ним относятся все аксиомы, а
также формулы, которые могут быть получены из аксиом с помощью правил вывода. Если
исчисление создается для обслуживание какой-либо математической теории то естественно
требовать, чтобы все доказуемые в нем формулы были формализацией истинных утверждений
теории. Этот фактор должен накладывать определенные ограничения на выбор аксиом и правил
вывода исчисления. В тоже время набор аксиом и правил вывода должен достаточно богатым,
чтобы с его помощью можно было доказать возможно большее число истинных утверждений
теории.
Правила, определяющие содержательный смысл формул исчисления, и соответствие между
понятиями доказуемости и истинности формул составляют предмет так называемой семантики
логического исчисления.
§9.2. Формулы алгебры предикатов.
Формулы будут определяться как строчки некоторых символов, или, как говорят, слова в
некотором алфавите.
Алфавитом называют произвольное множество попарно различных символов, допускающих
такую запись, по которой однозначно восстанавливаются сами символы. Обычно символ
отождествляется с любой своей записью, в связи с чем символы алфавита называют также его
буквами. В математике в качестве символов зачастую используются изображения букв латинского
и других алфавитов, изображения цифр, изображения букв с индексами, символы операций +, *, , и др.
Если А = {а1, а2, …, аn} – алфавит, то любая последовательность
аi1ai2 …aim
его букв называется словом в алфавите А. При этом число m называется длинной слова. Длинна
слова Р обозначается в виде ℓ(Р). Для удобства в рассуждениях вводится еще символ Λ для
обозначения пустого слова, т.е. слова, не содержащего ни одной буквы. По определению ℓ(Λ) =
0.
Так как слово есть конечная последовательность букв, то можно все буквы в слове
естественным образом занумеровать и говорить о 1-й, 2-й, и т.д. буквах слова. Обычно слова
записывают в строки, а буквы в них нумеруют слева направо. Два слова называют равными, или
графически равными, если они имеют одинаковую длину и соответствующие их буквы равны.
Равенство будем обозначать знаком =. Множество всех слов и всех слов длины m в алфавите А
обозначим соответственно через W(A) и Wm(A).
На множестве W(A) можно ввести операцию умножения (или приписывания) слов, взяв в
качестве произведения слов P, Q слово PQ, полученное приписыванием слова Q справа к слову
P.
Говорят, что слово P является подсловом Q, если существуют такие слова L, R (возможно
пустые), что
Q = LPR.
В этом случае говорят также, что слово Р входит, или имеет вхождение, в слово Q. Может
оказаться, что указанная выше пара слов L, R находится по словам P и Q неоднозначно.
Выпишем все такие различные пары слов (Li, Ri) и упорядочим их по возрастанию длины слова
Li. Получим:
Q = L1PR1 = L2PR2 = … LsPRs
В этом случае говорят, что имеется s вхождений слова P в слово Q, и все эти вхождения
упорядочивают по возрастанию длины слова Li. В соответствии с этим говорят о 1-м, 2-м, и т.д.
вхождениях слова P в слово Q. Например, слово «арарат» содержит два вхождения слова
«ара». В следующей записи 1-е и 2-е вхождения слова «ара» подчеркнуты соответственно одной
и двумя черточками снизу:
«арарат»
——
Перейдем к определению формул алгебры предикатов на алгебраической системе М(σ).
Сигнатуру σ представим в виде объединения σ = σ1Uσ2, где σ1 – множество символов
операций, а σ2 непустое множество символов предикатов на М. В частности, множество σ1 может
быть и пустым. Обозначим через σ0 подмножество из σ1 обозначений всех нуль-арных операций,
т. е. выделенных элементов множества М. Оно может быть любым подмножеством из М. При
определении формулы в качестве обозначений будут использоваться различные буквы (возможно,
с индексами): a, d, c для элементов из σ0; f, φ, ψ для элементов из σ1; p, q для элементов из
σ2. Кроме того, будут использоваться: множество Х символов предметных переменных со
значениями из М, обозначаемых буквами x, y, z, u, v (возможно, с индексами); множество О
логических операций , v, ->, ┐, ,  и служебных символов – скобок и запятых. Таким
образом, алфавитом при построении формул будет служить множество
Ҩ=σUXUO
В конкретных примерах для операций и предикатов будут использоваться также
общепринятые обозначения +, , *, =, ≤ и т. д.
Определим предварительно понятие терма на системе М(σ).
Определение 9.2.1.
1. Каждый символ переменного из Х или константы из σ0 есть терм.
2. Если f – символ n-арной операции из σ и t1, …, tn – термы, то слово f(t1, …, tn) есть
терм.
3. Других термов нет.
Таким образом, множество термов для М(σ) есть минимальное подмножество слов в
алфавите Ҩ, содержащее множество σ U X и замкнутое относительно образования слов по
правилу 2. Если вместо переменных из Х в терм t подставить элементы из М и произвести все
указанные в t операции, то мы получим элемент из М, называемый значением терма t.
Следовательно, терм t определяет функцию на M, зависящую от тех переменных, которые входят
в t. Так, если M=N и σ = {0, 1, +, .}, то термами могут быть представлены все многочлены над
N.
Теперь определим понятие формулы. В формулах нам необходимо будет различать
свободные и связанные вхождения переменных. Эти понятия удобнее определить параллельно с
определением формулы.
Определение 9.2.2.
1. Любой символ нуль-местного предиката σ есть формула.
2. Если р – символ n-местного предиката из σ, а t1, …, tn – термы, то слово p(t1, …, tn)
есть формула.
Формулы, определенные в пунктах 1-2, называются элементарными. Все вхождения
переменных в элементарные формулы называются свободными.
3. Если А и В – формулы, то слова
(A)(B),(A)v(B),(A)->(B),┐(А)*1
1
Дальше вместо ┐(А) будем писать (А)
также являются формулами. В них каждое вхождение переменной является вхождением в
формулу А или В и считается таким же (свободным или связанным), каким оно было
соответственно в А или В.
4. Если А - формула, в которой в которой есть свободное вхождение переменной xi, то
слова
 xi (A) и  xi (A)
являются формулами, в которых все вхождения переменных, отличных от xi, называются так же,
как и в А, а все вхождения переменной xi называются связанными. При этом формула А
называется областью действия записанного перед ней квантора  или  по переменной xi.
5. Других формул нет.
Замечание. В приведенном определении формулы на алгебраической системе М(σ) от М,
по существу, использовалось лишь множество выделенных элементов σ0. Поэтому формулу
М(σ) можно рассматривать также и как формулу на любой другой алгебраической системе
сигнатуры σ0. В связи с этим формулы на алгебраической системе М(σ) называют просто
формулами алгебры предикатов сигнатуры σ.
Число всех логических операций, участвующих в записи формулы А, назовем рангом
формулы А и обозначим через r(A). В частности, r(A) = 0 в том и только том случае, когда А –
элементарная формула.
Рассмотрим пример. Пусть р1, р2 – символы двухместных предикатов. Тогда выражение
______
x1((x1(p1(x2, x1)))v(x2((p2(x1, x2)))))
есть формула, поскольку p1(x2, x1), p2(x1, x2) являются
(1)
формулами по пункту 2, это элементарные формулы. Тогда
________
(p2(x1, x2)) есть формула по пункту 3, x1(p1(x2, x1)) и
____________
x2((p2(x1, x2))) есть формулы по пункту 4, далее
______
(x1(p1(x2, x1)))v(x2((p2(x1, x2))))
есть формула по пункту 3. В ней последнее вхождение х1 свободно, а потому (1) есть формула по
пункту 4.
Заметим, что в формуле (1) все вхождения переменной х1 связанные, первое вхождение
переменной х2 свободно, остальные – связанные.
Число скобок при записи формул можно уменьшить, если условиться:
1) не заключать в скобки элементарные формулы;
2) не заключать в скобки формулу, над которой находится знак отрицания;
3) считать, что операция  сильнее , обе эти операции сильнее ->, а операции
навешивания кванторов сильнее всех других операций;
4) не заключать в скобки большие латинские буквы, являющиеся обозначениями формул;
5) опускать скобки в формулах вида
(…((A1A2)A3)…)Ak, (…((A1vA2)vA3)…)vAk ;
6) записывать формулу δ1x1(δ2x2(…(δkxkA)…)) с кванторами δ1,…,δk в виде
δ1x1δ2x2…δkxkA и в виде δ1x1, x2, …, xkA при совпадении кванторов δ1,…,δk.
При указанных соглашениях формулу (1) можно записать в виде
_____
x1(x1p1(x2, x1)vx2p2(x1, x2)).
В дальнейшем для сокращения иногда будем опускать знак , т. е. вместо АВ писать АВ.
Если А формула сигнатуры σ, то любое ее подслово, являющееся формулой, называют
подформулой формулы А. Подробнее понятие подформулы можно определить индукцией по
рангу формулы.
Определение 9.2.3.
1. Подформулой элементарной формулы А лишь сама формула А.
2. Подформулами любой формулы вида
AB, AvB, A->B
называется сама эта формула и все подформулы формул А и В.
3. Подформулами любой формулы вида
A, xA, xA
называется сама эта формула и все подформулы формулы А.
Пользуясь определением 9.2.3, нетрудно выписать все подформулы любой заданной
формулы. Так, подформулами формулы (1) будут сама она и формулы:
_______ ______
______
x1p1(x2, x1)vx2p2(x1, x2), p2(x1, x2), x2p2(x1, x2), p1(x2, x1),
x1p1(x2, x1),
p2(x1, x2),
Из рассмотренных в § 2 правил получения предикатов на множестве М из заданных
предикатов видно, что любая формула А алгебры предикатов сигнатуры σ является предикатом на
алгебраической системе М(σ), зависящим лишь от тех предметных переменных, которые имеют
свободное вхождение в А. Если такими переменными являются x1, …, xn, то формулу А иногда
записывают в виде A(x1, …, xn). Заменив свободные вхождения переменных в формуле А
элементами из М (одинаковыми для всех вхождений одной переменной), мы получим
высказывание, значение которого можно вычислить, исходя из значений элементарных
высказываний и используя определение логических операций. Значения этих высказываний
называются значениями формулы А на М(σ) при соответствующих значениях переменных.
Определение 9.2.4. Формула А алгебры предикатов сигнатуры σ называется
выполнимой на алгебраической системе М(σ), если она принимает значение «и» хотя бы при
одном наборе из М для переменных, имеющих свободное вхождение в А. В противном случае
формула А называется ложной на М(σ). Формула А называется истинной на М(σ), если она
принимает значение «и» при любых наборах значений из М для переменных, имеющих
свободные вхождения в А.
Определение 9.2.5. Формула алгебры предикатов сигнатуры σ называется выполнимой,
тождественно истинной или тождественно ложной, если она соответственно выполнима хотя бы
на одной алгебраической системе, истинна на всех системах или ложна на всех системах
сигнатуры σ.
Тождественную истинность (ложность) формулы А обозначают в виде Аи (Ал).
Примеры 9.2.6.
1.А->(В->А)  и для любых формул А,В.
____
2.АВ->А  л для любых формул А,В.
3.Формула
_____
x1x1=x1 x2,x3((x1=x2x3)->(x1=x2)v(x1=x3)
(2)
выполнима, но не истинна на алгебраической системе N(. ; =). Легко видеть, что она зависит
лишь от х1 и принимает истинное значение в том и только в том случае, когда значением
переменной х1 является простое число.
4.Формула
x1, x2 (x1x2=x2x1)
(3)
выполнима, так как она выполнима, например, на системе N(. ; =). Однако она не
тождественно истинна, поскольку существуют некоммутативные системы с операцией
умножения.
Пример 3 показывает, что формулами алгебры предикатов можно записывать те или иные
свойства элементов алгебраических систем, или характеризовать те или иные подмножества ее
основного множества или множества наборов ее элементов.
Так формула (2) характеризует множество всех простых чисел. Формула
x2(x1x2=x3)
характеризует множество пар натуральных чисел, из которых первое делит второе, т. е. отношение
делимости на N.
Пример 4 показывает, что формулы алгебры предикатов сигнатуры σ могут быть
использованы для характеризации алгебраических систем сигнатуры σ. Формула (3) выделяет
класс алгебраических систем с коммутативной операцией умножения, если под равенством =
понимать отношение (предикат) совпадения элементов множества.
§ 9.3. Равносильность формул. Основные отношения равносильности.
Определение 9.3.1. Формулы А, В алгебры предикатов сигнатуры σ называются
равносильными на алгебраической системе М(σ), если они принимают на М(σ) одинаковые
значения при любом наборе значений предметных переменных, имеющих свободные вхождения
переменных в А или В.
Из определения 9.3.1 видно, что равносильность тех или иных формул сигнатуры σ зависит
от свойств алгебраической системы М(σ). Например, формулы xA и xA равносильны на
любой одноэлементной системе, однако не равносильны в общем случае. Можно привести и менее
тривиальные примеры. Изучение равносильностей, имеющих место для отдельных конкретных
алгебраических систем, не отвечает целям и задачам математической логики как науки об общих
закономерностях в рассуждениях. В связи с этим более ценным является следующее понятие
равносильности.
Определение 9.3.2. Формулы алгебры предикатов сигнатуры σ называются
равносильными, если они равносильны на любой алгебраической системе сигнатуры σ.
Равносильность формул А, В, как и равносильность высказываний будем обозначать в виде
АВ.
Отметим следующие очевидные свойства равносильности формул.
1.Отношение равносильности формул является отношением эквивалентности на множестве
всех формул сигнатуры σ, и, следовательно, все указанные формулы разбиваются на классы
равносильных формул.
2.Если формула A’ получена из А заменой некоторой подформулы В равносильной ей
формулой В’, то А’=А.
Приведем примеры равносильностей, называемых иногда основными равносильностями
алгебры предикатов.
1. ABBA
2. AvBBvA
3. (AB)CA(BC)
4. (AvB)vCAv(BvC)
5. A(BvC)ABvAC
6. AvBC(AvB)(AvC)
7. A(AvB)A
8. AvABA
9. AAA
10.
AvA A
1, 2 – законы коммутативности
3, 4 – законы ассоциативности
5, 6 - законы дистрибутивности
7,8 – законы поглощения
9, 10 – законы идемпотентности
__ _ _
11.
ABAvB
____ _ _
12. AvB A B
_ _
13. A->BB->A
11, 12 – законы де Моргана
закон контрапозиции
—
14. AA
закон двойного отрицания
15.A v Aи
закон исключенного третьего
16.AAл
закон противоречия
17.(A->B)(B->C)->(A->C)и
18. хуАухА
правило силлогизма
18, 19 – правила перестановки
19. хуАухА
одноименных кванторов
___
_
20. хАxA 20, 21 – правила отрицания кванторов
___
_
21. xAxA
22. x(AB)xAxB 22, 23 – законы дистрибутивности
23. x(AvB)xAvxB
кванторов ,  относительно
операций  и v (соответственно);
24. A->BA->B;
25. δxA*Bδx(A*B), где δ – квантор  или , *-операция  или v и формула В не
содержит вхождений х;
26. δхА(х)δуА(у), где δ – квантор  или , А(х) – формула, не содержащая
вхождений буквы у, а А(у) – формула, полученная из А(х) заменой всех свободных
вхождений х на у.
Перечисленные равносильности являются следствиями свойств логических операций, а
потому имеют место для любых систем. В связи с этим их называют основными законами логики
предикатов. Они постоянно (явно или неявно) используются при доказательствах утверждений во
всех разделах математики.
Так, зачастую вместо теоремы вида А -> В доказывается равносильное утверждение
А ->В. При этом используется закон контрапозиции 13. Закон исключенного третьего 15
обычно используется при доказательствах от противного, когда для доказательства теоремы А
опровергают утверждение А и отсюда на основании равносильности A v A  и делают
вывод об истинности А. Правило силлогизма 17 позволяет сводить доказательства теоремы вида
А->С к доказательству цепочек более простых утверждений, например, А->В, В->С.
С другой стороны, в доказательствах иногда допускаются ошибки, состоящие в замене
утверждения на равносильным ему предложением. Так по аналогии с равносильностями 18-19,
разрешающими переставлять одноименные кванторы, иногда переставляют и разноименные
кванторы. Этого делать нельзя, поскольку и в общем случае формулы вида
хуА и ухА
(1)
не равносильны. Например формула ху(x < y) истинна на N, а формула ху(x < y)
ложна.
Аналогичные ошибки допускаются с использованием правила дистрибутивности кванторов
 и  относительно операций v и  (соответственно). Покажите в качестве упражнения, что
формулы
х(A v B) и хА v xB,
a также формулы
х (A  B) и хА  xB
в общем случае не равносильны.
Заметим, что равносильность формул А, В эквивалентна истинности формулы
(A->B)  (B->A)
или двух формул
A->B, B->A.
Однако практически зачастую бывает так, что из двух последних формул истинна только
одна. Так, приведенные выше формулы (1) в общем случае не равносильны, но формула
ухА -> хуА
истинна на любой алгебраической системе.
Если формула А->В истинна на системе М(σ), то при любом наборе значений предметных
переменных, имеющих свободные вхождения в формулу А->В, формула В принимает истинное
значение всякий раз, когда истинным является значение А. В связи с этим говорят, что формула В
является следствием формулы А.
Свойства отношения логического следования формулы из формул также широко
используются при доказательствах. В рассуждениях при доказательствах иногда используется
также известный в математической логике принцип двойственности.
Определение 9.3.3. Пусть А – формула алгебры предикатов, не содержащая операции
->. Формула, полученная из А заменой всех вхождений  на ,  на ,  на ,  на ,
называется двойственной к А и обозначается через А*.
Очевидно, что (А*)*= А, и потому формулы А и А* называются двойственными.
Двойственными называются и взаимозаменяемые операции  и , а также кванторы  и .
Теорема 9.3.4. Пусть А – формула алгебры предикатов p1, …, ps суть все различные
элементарные формулы в А, т. е.:
A = A(p1, …, ps)
Тогда имеет место равносильность формул:
A*( p1, …, ps ) = A(p1, …, ps ).
Доказательство. Докажем теорему индукцией по рангу r формулы А. При r = 0 ее
утверждение верно. Допустим, что оно верно для любой формулы ранга r < n и пусть r(A) =
n+1.
Возможны 5 случаев:
A = A1  A2, A = A1 v A2, A = xA1, A = xA1, A =A1.
1. A = A1  A2. Тогда, используя предположение индукции, закон де Моргана 11 и общие
свойства равносильности, получим:
A*( p1, …, ps ) = A1*( p1, …, ps ) v A2*( p1, …, ps ) 
 A1 ( p1, …, ps ) v A2( p1, …, ps )  A ( p1, …, ps ).
В трех следующих случаях рассуждения аналогичны. Вместо равносильности 11 в них
используются соответственно равносильности 12, 20, 21. В последнем случае утверждение
теоремы следует непосредственно из предположения индукции. Теорема доказана.
Следствие 9.3.5. (Принцип двойственности.) Для любых формул А, В алгебры
предикатов:
A  B  A*  B*
Принцип двойственности позволяет вместо двух равносильностей A  B и A*  B*
доказывать лишь любую одну из них.
§ 9.4. Использование равносильностей для упрощения формул.
Равносильности 1-26 зачастую используются также для преобразования формул к
равносильным им формулам нужного вида.
В качестве примеров рассмотрим преобразование формул алгебры предикатов к так
называемым приведённым и предваренным формулам.
Определение 9.4.1. Формула алгебры предикатов называется приведенной, если в ней не
используется операция ->, а отрицание или не используется совсем, или относится лишь к
элементарным формулам.
Определение 9.4.2. Предваренной (или нормальной, или пренексной) формулой алгебры
предикатов называется любая формула вида
δ1xi1δ2xi2…δkxik A,
(1)
где δ1, …, δk – кванторы, а А приведенная формула, не содержащая кванторов.
Теорема 9.4.3. Для всякой формулы А алгебры предикатов существует равносильная
ей приведенная формула. Докажем теорему индукцией по рангу r(А) формулы А. Если r(А) = 0,
то утверждение верно. Пусть r(А) > 0. Тогда по определению формулы А совпадает с одной из
формул вида
A1  A2, A1 v A2, δxA1, A1 -> A2, A1
(2)
По предположению индукции формулы А1, А2 равносильны приведенным формулам.
Заменив ими в (2) формулы А1, А2, мы в трех первых случаях сразу получим приведенные
формулы. А так как A1->A2  А1vА2 (см. равносильность 24), то остается рассмотреть
случай, когда A =A1. Если А1 – элементарна, то А – приведенная формула. Если же А1 не
элементарна, то она может иметь вид
B1  B2, B1 v B2, δxB1, B1 -> B2, B1,
где r(Bi) < r(A) - 2. Тогда по свойствам равносильности 11, 12, 20, 21, 24, 14 формула А
равносильна одной из формул:
B1 v B2, B1 B2, δ*xB1, B1 vB2, B1
(3)
Остается применить предположение индукции к формулам B1,B1,B2 и заменить их в
(3) приведенными формулами.
Теорема 9.4.4. Для всякой формулы а алгебры предикатов существует равносильная ей
предваренная формула.
Доказательство. По теореме 9.4.3, не теряя общности, можно считать, что А –
приведенная формула. Снова применим индукцию по r(А). Для r(А) =0 утверждение верно.
Пусть r(А) > 0. Тогда формула А может иметь вид
1) A1  A2, 2) A1 v A2, 3) δxA1, 4) A1
Причем в случае 4 А1 – элементарная формула и для нее утверждение теоремы верно.
Рассмотрим случаи 1-3.
1. A = A1  A2. По предположению индукции Аi равносильна предваренной формуле
Bi, i = 1,2, причем согласно равносильности 26 связанные переменные любой из формул В1, В2
можно считать отличными от всех переменных другой формулы. Таким образом , A = B1  B2,
где можно считать
B1 = δ1x1…δkxkC1, B2=δk+1xk+1…δnxnC2
x1, …, xk не входят в С2, xk+1,…,xn не входят в С1, и формулы С1, С2 не содержат
кванторов. Отсюда, используя равносильность 25, получим
Aδ1x1…δkxkδk+1xk+1…δnxn(C1  C2).
2. A = A1 v A2, рассуждения двойственны.
3. A = δxA1. По предположению индукции А1 равносильна приведенной формуле
A  δ1x1…δkxkB
(4)
причем можно считать, что x  x1, …, xk. Возможны два подслучая:
а) В содержит свободные вхождения х. Тогда А равносильна предваренной формуле
δxδ1x1…δkxkB;
б) В не содержит свободных вхождений х. Тогда из равносильности 4 следует, что
значения формулы А1 не зависят от значений переменной х, а потому АА1 и теорема доказана.
§9.5. Построение исчисления предикатов.
1. Язык исчисления предикатов.
В качестве алфавита исчисления предикатов возьмем то же самое множество
Ҩ=σUXUO
которое служило алфавитом при определении формул алгебры предикатов. За элементами
множества σ, Х и О сохраним те же самые обозначения и названия, хотя здесь на все буквы
алфавита Ҩ мы должны пока смотреть просто как на символы, не имеющие какого-либо
содержательного смысла. Например, символ операции f здесь не обозначает какую-либо
конкретную операцию, определенную на каком-либо конкретном множестве. То же относится и к
символам предикатов. Термины же «символ операции» и «символ предиката» объясняются тем,
что в приложениях исчисления предикатов к конкретным математическим теориям мы будем
трактовать их (интерпретировать) как операции и предикаты на конкретном множестве.
Аналогично, предметным переменным будут придаваться значения из этого множества.
Понятия терма и формулы сигнатуры σ в исчислении предикатов определяются буквально
так же, как в алгебре предикатов.
Равенство формул, как и в алгебре предикатов, будем обозначать знаком =.
Из множества всех формул ниже особую роль будут играть формулы, не содержащие
свободных вхождений предметных переменных. Они называются замкнутыми формулами, или
предложениями.
Таким образом, нами полностью определен язык исчисления предикатов 1-й ступени
сигнатуры σ. Обозначим его буквой α. При формул языка α будут использоваться те же
правила сокращения скобок, что и в алгебре предикатов.
Заметим, что кроме исчисления предикатов 1-й ступени в математической логике и в теории
моделей рассматриваются исчисления предикатов и логические языки 2-й ступени. В их алфавиты
кроме перечисленных выше символов вводятся также символы функциональных и предикатных
переменных и кванторы ,  могут навешиваться не только на предметные переменные, но и на
функциональные переменные и предикатные переменные.
2.Аксиомы и правила вывода исчисления предикатов.
При построении исчисления предикатов с определенным выше языком α аксиомы и правила
вывода могут выбираться по-разному. Мы выберем следующую систему аксиом. Аксиомы этой
системы по используемым в них логическим операциям делятся на 5 подсистем, которые мы
занумеруем римскими цифрами. В подсистемах l - lV под буквами А, В, С понимаются
произвольные формулы языка α, ограничения на формулы системы V указываются в
формулировках соответствующих аксиом.
l.
1) A->(B->A)
2) (A->(B->C))->((A->B)->(A->C))
ll.
1) AB->A
2) AB->B
3) (A->B)->((A->C)->(A->BC))
lll.
1) A->AvB
2) B->AvB
3) (A->C)->((B->C)->(AvB->C))
—
IV.
1) A->A
—
2) A->A
3)(A->B)->(B->A)
V.
1)x A(x)->A(t)
2) A(t)->x A(x).
где A(x) – формула, содержащая свободные вхождения переменной х, A(t) – формула,
полученная заменой в A(x) всех свободных вхождений x термом t, удовлетворяющим условию:
ни одно свободное вхождение х в A(x) не находится в области действия квантора по какой-либо
переменной, содержащейся в t (при этом условии говорят, что терм t свободен для х в формуле
A(x)) (далее аксиомы будут обозначаться римскими цифрами с индексами. Например, ll3 –
аксиома 3 из подсистемы ll).
Сформулируем теперь правила вывода. Каждое такое правило позволяет из некоторого
множества исходных формул получать новую формулы. Поэтому правило вывода записывают
обычно в виде «дроби», у которой в «числителе» находятся исходные формулы, а в «знаменателе»
– вновь получаемая формула.
l. Правило заключения:
A, A ->B ,
B
где А, В – любые формулы языка α.
ll. Правило -введения:
B -> A ,
B->xA
где А содержит , а В не содержит свободные вхождения переменной х.
lll. Правило -удаления:
A -> B ,
x A->B
где А, В – формулы, удовлетворяющие тем же условиям, что и в правиле ll.
Формула, находящаяся в «знаменателе» правила вывода, называется непосредственным
следствием формул «числителя».
Заметим, что, подставляя в аксиому l1 вместо А, В произвольные формулы, мы получим
бесконечное множество формул. Таким образом, запись аксиомы l1 является, по существу,
схемой, по которой можно получать формулы. То же можно сказать об остальных аксиомах и о
формулах из правил вывода.
Определив язык α и аксиомы с правилами вывода, мы определили тем самым логическое
исчисление, называемое исчислением предикатов 1-й ступени сигнатуры σ. Меняя σ, т. е. меняя
множество формул и сохраняя схемы аксиом и правил вывода, мы будем получать другие
исчисления предикатов. В дальнейшем язык α будем считать фиксированным и соответствующее
логическое исчисление будем обозначать той же буквой α.
§ 9.6. Выводимость и доказуемость формул.
Определение 9.6.1. Выводом формулы А из конечного или бесконечного множества
формул Т в исчислении α называется конечная последовательность формул
А1, А2, …, An,
___
в которой An = A и каждая из формул Ai, i 1, n является или аксиомой, или формулой из Т
(исходной формулой), или получается по некоторому правилу вывода из предыдущих формул
последовательности (1).
Если существует вывод формулы А из множества формул Т исчисления α, то говорят, что
в α А выводима из Т и пишут
Т ├─ А, или В1, В2, …, ВК ├─ А,
α
α
если Т = {В1, В2, …, ВК}. При этом формулы из Т называют посылками вывода.
Особо важным является случай, когда Т – пустое множество.
Определение 9.6.2. Формула из А языка α , выводимая в исчислении α из пустого
множества формул, называется доказуемой формулой, или теоремой исчисления α, а сам вывод
формулы А из пустого множества формул называется ее доказательством. Если формула А
доказуема в исчислении α, то пишут
├─ А.
α
Так как у нас исчисление α фиксировано, то букву α будем опускать и писать просто
Т ├─ А; В1, В2, …, ВК ├─ А; ├─ А.
Очевидно, что при выводах и доказательствах формул можно использовать не только
аксиомы и исходные формулы, но и любые доказанные ранее формулы.
Дальше нас будут интересовать вопросы о характеризации доказуемых формул и формул,
выводимых из заданного множества, вопросы о непротиворечивости и полноте исчисления α.
Предварительно приведем доказательства некоторых формул и вспомогательных правил вывода.
При этом последовательности формул, являющиеся доказательствами или выводами, будем
записывать в столбик, указывая справа их происхождение (номер аксиомы, номер правила вывода,
порядковые номера исходных формул и т. п.).
Теорема 9.6.3. ├─ А -> А для любой формулы А.
Доказательство.
1) (А->((В->А)->А))->((А->(В->А))->(А->А)),
2) А ->((В->А)->А),
3) (А->(В->А))->(А->А),
4) А-> (В->А),
5) А->А.
(l2)
(l1)
(l, 1, 2)
(l1)
(1, 3, 4)
Теорема 9.6.4. Если А – любая формула и В – доказуемая формула, то ├─ А->В.
Доказательство получается и добавлением к доказательству формулы В аксиомы l1 и
формулы А->В, получаемой из В и аксиомы l1 по правилу l.
Теорема 9.6.5. ├─ АВ -> ВА для любых формул А, В.
Доказательство.
1) (АВ->В)->((АВ->А)->(АВ->ВА)),
2) АВ->В,
3) (АВ->А)->(АВ->ВА),
4) АВ->А,
5) АВ->ВА.
(ll3)
(ll3)
(l, 1, 2)
(ll1)
Заменяя в доказательстве теоремы 9.6.5 ll1 ll3 соответственно аксиомами lll1-lll3, получим
доказательство следующей формулы.
Теорема 9.6.6. ├─ АВ -> ВА для любых формул А, В.
______
___
Теорема 9.6.7. ├─ x A(x) ->-x A(x) для любой формулы А(х), содержащей
свободные вхождения переменной х.
Доказательство.
1) А(х)-> х А(х),
(V2)
______ ___
2) (А(х)->х А(х))->(х А(х)->А(х))
______ ___
3) x А(x) ->А(x)
______
___
4) x А(x) -> x А(x)
(lV3)
(l, 1, 2)
(l, 1, 3)
Даже из приведенных простейших примеров видно, что задача построения доказательств
формул является сложной и зачастую весьма искусственной. То же относится и к построению
выводов. Попытайтесь, для примера построить вывод
AC ->D ├─ A -> (C->D).
Для облегчения этой работы сначала доказывают ряд вспомогательных правил вывода,
которыми затем можно заменять целые куски выводов или доказательств.
Ряд наиболее распространенных вспомогательных правил вывода можно получить из так
называемой теоремы дедукции. Однако и ее формулировка и доказательство в общем случае
сложны. Мы пока один ее ослабленный вариант.
Теорема об ограниченной дедукции. Пусть Т – произвольное множество формул,
и А, В – произвольные формулы. Если
T, A├─ B
(2)
и существует вывод формулы В из T U {A}, в котором не используются правила -введения и
-удаления, то
T ├─ A -> B.
(3)
Доказательство. Пусть
В1, В2, …, Вm = B
есть вывод формулы В из T U {A}, в котором не используются правила -введения и удаления. Докажем утверждение (3) индукцией по длине вывода m.
Пусть m=1. Тогда В является или аксиомой, или посылкой. Если В – аксиома, то она,
очевидно, доказуема, и по теореме 9.6.4 имеем ├─ A -> B для любой формулы А. Отсюда и
следует (3). Пусть В – посылка. Если В=А, то (3) следует из теоремы 9.6.3. Если же ВТ, то
можно указать следующий вывод формулы А->В из Т:
1) В->(А->В),
(l1)
2) В,
(посылка)
3) А->В
(l, 1,2)
Допустим, что теорема верна при m < n, и докажем ее для m = n + 1. В этом случае по
условию формула В будет или аксиомой, или посылкой, или непосредственным следствием двух
предыдущих формул Bi, BJ по правилу заключения. Если В – аксиома или посылка, то (3)
устанавливается точно так же, как и при m=1. Пусть В получается из Bi, BJ по правилу
заключения, т. е. BJ = Bi -> B. Так как i<n, j<n, то по предположению индукции имеем:
T├─ A -> Bi, T├─ A -> (Bi ->B).
Применяя теперь к формулам
A->( Bi ->B), A-> Bi
и к аксиоме l2
(A->( Bi ->B))->((A-> Bi)->(A->B))
дважды правило заключения, получим формулу А->В. Теорема доказана.
Докажем теперь ряд вспомогательных правил вывода, обозначая в них буквами А, В, С
произвольные формулы α.
Правило умножения формул:
A, B ├─ AB.
Вывод.
1) (A->A)->((A->B)->(A->AB))
2) A->A
3) (A->B)->(A->AB)
4) B->(A->B)
5) B
6) A->B
7) A->AB
8) A
9) AB .
Правило силлогизма:
A->B, B->C├─ A->C.
(II3)
(теорема 1)
(I, 1, 2)
(I1)
(посылка)
(I, 4, 5)
(I, 3, 6)
(посылка)
(I, 7, 8)
Согласно теореме дедукции достаточно показать, что
A->B, B->C, A├─ C,
причем существует вывод С, не использующий правил -введения и -удаления. Таким
выводом может служить последовательность формул:
А, А->В, В, В->С, С.
Для ее получения дважды применяется правило заключения к посылкам. Аналогично
доказываются следующие правила.
Правило умножения посылок:
A->(B->C)├─ AB ->C.
Правило разделения посылок:
AB->C ├─ A ->(B->C).
Правило перестановки посылок:
A->(B->C)├─ B->(A->C).
Правило умножения заключений:
A->B, A->C├─ A->BC.
Правило сложения посылок:
A->C, B->C├─ A v B->C.
Правило введения посылки:
A├─ B->A.
Правило контрапозиции:
A->B├─ B->A.
Правило де Моргана:
_ _
__
___
_ _
a) A v B ├─ AB, б) АВ ├─ A v B
а) Вывод:
1) AB->A
(ll1)
2) AB->B
_ __
3) A->AB
_ __
4) B->AB
_ _ __
5) A v B->AB
_ _
6) A v B
__
7) AB
(ll2)
б) Вывод:
_ _ _
1) A->A v B
_ _ _
2) B->A v B
──── ─
3) A v B ->A
──── ─
4) A v B ->B
─
5) A->A
─
6) B->B
────
7) A v B->A
────
8) A v B->B
────
9) A v B->AB
__ ────
10)
AB->A vB
11)
─────
_ _
A v B -> A v B
(правило контрапозиции, 1)
(правило контрапозиции, 2)
(правило сложения посылок, 3, 4)
(посылка)
(1, 5, 6)
(lll1)
(lll2)
(правило контрапозиции, 1)
(правило контрапозиции, 2)
(IV2)
(IV2)
(правило силлогизма, 3, 5)
(правило силлогизма, 4, 6)
(правило умножения заключений, 7, 8)
(правило контрапозиции, 9)
(IV2)
12)
__ _ _
AB->A v B
(правило силлогизма, 10, 11)
Правило -отрицания:
_____
___
а) x A(x)├─ x A(x)
(следует непосредственно из теоремы 9.6.7);
___
_____
б) x A(x)├─ x A(x)
Вывод:
___ ___
1) x A(x)->A(x)
───
───
2) A(x) ->x A(x)
──
3) A(x) -> A(x)
─────
4) A(x) -> x A(x)
────
5) x A(x)-> x A(x)
═════ ────
6) x A(x) ->x A(x)
___
═════
7) x A(x) -> x A(x)
___ ______
8) x A(x) ->x A(x)
(V1)
(правило контрапозиции, 1)
(IV1)
(правило силлогизма, 2, 3)
(lll, 4)
(правило контрапозиции, 5)
(IV1)
(правило силлогизма, 6, 7)
Правило -отрицания:
______
___
___
______
а) x A(x) ├─ x A(x); б) x A(x)├─ x A(x).
Докажите в качестве упражнения.
Правило противоречия:
АА ├─ В (из противоречия выводима любая формула).
Распишем вывод произвольной формулы В из АА, используя при этом любую
доказуемую формулу R, например, А->А.
1) A->(R->A)
(l1)
2) (R->A)->(A->R)
(IV3)
3) A->(A->R)
(правило силлогизма, 1, 2)
4) AA -> R
(правило умножения посылок, 3)
5) B->R
_ ─
6) R->B
( теорема 2)
─
7) AA ->B
═
8) B->B
(правило контрапозиции, 5)
(правило силлогизма, 4, 6)
(IV2)
9) AA->B
(правило силлогизма, 7, 8)
10)
AA
(посылка)
11)
B
(1, 9, 10)
Правило (закон) исключенного третьего:
├─ A vA.
Доказательство (снова используем доказуемую формулу R).
1) A->AvA
(lll1)
2) A->AvA
_____
3) A v A->A
_____ _
4) A vA->A
─
5) AvA->A
_____
6) A vA->A
_____
7) A vA->AA
(lll1)
8) AA->R
____
9) A vA ->R
(правило противоречия и теорема дедукции )
(правило контрапозиции, 1)
(правило контрапозиции, 2)
(IV1)
(правило силлогизма, 4, 5)
(правило умножения заключений, 7, 8)
(правило силлогизма, 7, 8)
13)
═ ═══
R-> A vA
═
R->R
════
R->A vA
════
A vA->A vA
14)
R->A vA
(правило силлогизма, 12, 13)
15)
R
(теорема)
16)
A vA
(1, 14, 15)
10)
11)
12)
(правило контрапозиции, 9)
(IV1)
(правило силлогизма, 10, 11)
(IV2)
Воспользуемся вспомогательными правилами вывода для доказательства еще одного
частного случая теоремы дедукции.
Теорема дедукции (для замкнутой формулы). Если Т произвольное множество формул,
В – произвольная, А – замкнутая формулы и
T, A├─ B,
то
T├─ A->B.
Доказательство производится так же, как теоремы об ограниченной дедукции. В
дополнение нам необходимо лишь рассмотреть два случая (при m = n + 1):
а) В получается по правилу -введения из формулы Bi;
б) В получается по правилу -удаления из формулы Bi.
В случае «а» имеем:
Bi = C->D(x), B = C->x D(x),
причем С не содержит свободных вхождений х. По предположении индукции имеем:
T├─ A->(C->D(x)).
Дополним вывод формулы A->(C->D(x)) следующими формулами до вывода формулы А->В:
AC-> D(x)
(правило умножения посылок)
AC->x D(x)
(правило -ввведения)
A->(C->x D(x)) = A->B
(правило разделения посылок)
В случае «б»:
Bi = C(x) -> D, B =  x C (x) ->D,
где D не содержит свободных вхождений х. По предположению индукции
T├─ A->(C(x)->D).
Отсюда, используя правила перестановки посылок и -удаления, получим:
T├─ C(x)->(A->D)
T├─ x C(x)->(A->D)
T├─ A->(x C(x) ->D) = A->B.
Теорема доказана.
Укажем одно следствие теоремы дедукции.
Следствие. Если Т – любое множество формул, А – замкнутая, В – любая формулы и
T, A ├─ BB
то
T ├─ A.
(4)
Доказательство. По теореме дедукции
T ├─ A -> BB.
Применяя правило контрапозиции, получим
___
T├─ BB -> A.
(5)
Из правила де Моргана «а» и закона исключенного третьего следует, что
___
├─ BB
(6)
Для любой формулы В. Из (5), (6) следует (4).
§9.7. Семантика исчисления предикатов.
Для уяснения содержательного смысла аксиом и правил вывода введем понятие
интерпретации языка и исчисления α.
Определение 9.7.1. Под интерпретацией языка исчисления α понимают любое
множество М с зафиксированным отображением  сигнатуры σ во множество операций и
предикатов, определенных на М, при котором символу n-арной операции f из σ соответствует nарная операция f, определенная на множестве М, а символу n-арного предиката р из σ n-арный
предикат р на М. Образ множества σ при отображении  обозначим через σ. В частности,
образом констант из σ при  будут нуль-арные операции на М, т. е. некоторые элементы из М.
Если (М, ) – интерпретация языка α, то, заменив в любой формуле языка α константы,
символы операций и символы предикатов их образами при  и условившись переменным из Х
придавать значения из множества М, мы получим формулу А алгебры предикатов на
алгебраической системе М(σ), и можно говорить о выполнимости, истинности или ложности
этой формулы на системе М(σ).
Определение 9.7.2. Формула А исчисления предикатов называется выполнимой,
истинной, ложной в интерпретации (М, ), если соответственно выполнима, истинна, ложна
формула А на алгебраической системе М(σ).
Определение 9.7.3. Формула А исчисления предикатов α называется тождественно
истинной, если она истинна во всех интерпретациях исчисления α.
Естественно возникает вопрос о соотношении между классами доказуемых и истинных
формул исчисления предикатов. Ответ на этот вопрос можно получить из следующих теорем.
Теорема 9.7.4. Если каждая формула множества формул Т истинна в некоторой
интерпретации (М, ) исчисления α и T├─ A, то А – истинна в (М, ).
Доказательство. Для простоты записей условимся считать, что операции и предикаты на
М обозначены теми же буквами, что и соответствующие им символы операций из σ. Тогда  тождественное отображение и в записи А индекс  можно опускать.
Из определения доказуемой формулы следует, что достаточно делать два утверждения:
а) все аксиомы – истинны;
б) формула, являющаяся непосредственным следствием по любому правилу вывода из
истинных формул, является истинной.
Истинность аксиом первых четырех групп аксиом доказывается одним методом.
Проиллюстрируем его на аксиоме
I1: A -> (B->A).
Заменив в А, В свободные вхождения переменных элементами из М, получим высказывания,
имеющие вполне определенные значения £ и ß (каждое из £, ß есть «и» или «л»).
Перебирая всевозможные наборы значений «и» и «л» для £, ß мы непосредственной проверкой
(пользуясь определением операции ->) убедимся в том, что при любых £ , ß
£ -> (ß->£)= и.
Отсюда следует, что аксиома l1 истинна в интерпретации (М, ).
Докажем теперь истинность аксиомы
V1 : x A(x) -> A(t),
где t – терм, свободный для х в А(х). Пусть х, х1, …, хn суть все переменные, имеющие
свободные вхождения в А(х) и xi1, …, xim – все переменные, участвующие в образовании
терма t. Так как t свободен для х в А(х), то все вхождения переменных xi1, …, xim в терм t
останутся свободными при подстановке t вместо х в формулу А(х). В связи с этим запишем:
A(t) = A(t (xi1, …, xim), х1, …, хn).
Допустим, что формула V1 не истинна в интерпретации (М, ). Это означает, что при
некотором наборе значений переменных х1=a1, …, хn=an, xi1=ai1, …, xim=aim формула x
A(x) принимает значение «и», а формула A(t) – значение «л». Если обозначить через b
значение терма t при xi1=ai1, …, xim=aim, то будем иметь: с одной стороны, A(х0, a1, …, an)
является истинным высказыванием при любом значении х0М, а с другой стороны,
высказывание A(b, a1, …, an) - ложно. Полученное противоречие и доказывает наше
утверждение.
Аналогично доказывается, что правила вывода позволяют из истинных формул в
интерпретации (М, ) получать снова истинные формулы, т. е.:
1) если истинны формулы А и А->В, то истинна и формула В;
2) если истинна формула В->А(х) и х не имеет свободных вхождений в В, то истинна
формула В -> х А(х);
3) если истинна формула А(х)->В и х не имеет свободных вхождений в В, то истинна и
формула х А(х) -> В.
Теорема доказана.
Следствие 9.7.5. Всякая доказуемая формула исчисления предикатов α является
истинной в любой интерпретации (М, ) исчисления α.
Замечание. Теорема и следствие теряют силу, если в аксиомах V1 и V2 не накладывать
ограничений на терм t или в правилах -введения и -удаления разрешить свободные вхождения
х в В. Приведем соответствующие примеры.
1. Пусть множество натуральных чисел N, A(x) = y (x < y) и t = x + y – терм, не
свободный для х в А(х), поскольку свободное вхождение буквы х в А(х) находится в области
действия квантора  по букве у, входящий в терм t.
Нетрудно видеть, что формула
x A(x) ->A(t),
или подробнее,
x (y(x<y)) -> y (x + y<y)
ложна в арифметике.
1. В той же интерпретации, положим B = ( x < y ), A = (x < y +1) .
Тогда имеем: формула В->А истинна на N, а формула В -> xА ложна, поскольку, например,
при х=2, у=3 имеем
(2<3)  и, x (x < 4)  л.
Доказанная теорема свидетельствует о том, что логические средства исчисления
предикатов выбраны разумно, поскольку с помощью их можно доказать только утверждения,
истинные с содержательной точки зрения.
Следствие 9.7.6. Исчисление предикатов непротиворечиво, т.е. в нем не может быть
доказуемой никакая формула А вместе с ее отрицанием, или никакая формула вида АА.
Действительно формула АА является ложной в любой интерпретации, тогда как
доказуемые формулы истинны в любой интерпретации.
Теперь естественно возникает вопрос: не слишком ли мало аксиом и правил вывода мы взяли
при построении исчисления предикатов? Так, из доказательства предыдущей теоремы видно, что
если бы нашлась формула А, не доказуемая в исчислении предикатов, но истинная в любой его
интерпретации, то, присоединив А к системам аксиом, мы получили бы более сильное и
непротиворечивое логическое исчисление. Однако ниже будет показано, что такой формулы А не
существует, а именно имеет место следующая теорема Геделя о полноте исчисления предикатов.
Теорема 9.7.7. Если формула
исчисления предикатов истинна во всех его
интерпретациях, то она доказуема в исчислении предикатов.
Для доказательства этой теоремы введем сначала некоторые понятия М докажем одно общее
утверждение (см. теорему 9.7.11).
Определение 9.7.8. Множество формул Т исчисления α называется противоречивым,
если существует такая формула А языка α, что
Т├─ АА.
В противном случае Т называется непротиворечивым.
Определение 9.7.9. Множество формул Т исчисления α называется выполнимым, если
существует интерпретация, в которой все формулы из Т принимают истинное значение хотя бы
при одной (общей для всех формул из Т) замене переменных.
Определение 9.7.10. Множество формул Т исчисления α называется полным, если для
каждой замкнутой формулы языка α имеет место
Т├─ А или Т ├─ А.
Теорема 9.7.11. Всякое непротиворечивое множество S замкнутых формул
исчисления α выполнимо.
Доказательство. Добавим к множеству символов языка α еще счетное множество
констант (символов нуль-арных операций)
ß = {b0, b1, b2, …} .
Получим новый язык α1 в сигнатуре σ1 = σ U ß. Заменяя в аксиомах и правилах вывода
исчисления α формулы языка α1, мы получим новое логическое исчисление, которое обозначим
той же буквой α1. Из определения языка α1 видно, что все доказанные факты об исчислении α (в
частности, все доказанные формулы и дополнительные правила вывода) сохраняются и в α1. Так
как язык α1 включает в себя α, то S можно рассматривать как множество предложений языка α1.
Легко видеть, что S будет непротиворечивым и в исчислении α1. Действительно, если в α1 из S
выводима формула АА, то, заменив в формулах вывода АА из S все константы из ß
переменными, не участвующими в этом выводе, мы получим вывод в α из S формулы ВВ ,
где В получается из А указанной заменой констант. Чтобы убедиться в этом, достаточно
заметить, что указанная замена аксиомы переводит в аксиомы и сохраняет свойство формулы быть
непосредственным следствием предыдущих формул. Таким образом, S непротиворечиво в α1.
Теперь расширим определенным образом множество S. Для этого занумеруем все
замкнутые формулы исчисления α1:
А0, А1, А2, …
По формуле А0 и системе S построим множество формул S0, положив:
 S U { А0 }, если S├─ А0
S0
=  S U { А0 }, если S├┼ А0 и А0  х В0 (х)
 S U { А0, B0, (bi0)}, если S├┼ А0 и А0 = х В0 (х),
где знаком ├┼ обозначено отрицание выводимости, а bi0 – символ с наименьшим номером из ß,
не встречающийся в А0. Из определения S0 имеем:
S  S0 и S0 ├─ А0 или S0 ├─ А0
Покажем, что юю непротиворечиво. Допустим, что в α1
S0 ├─ ВВ
В соответствии с определением S0 рассмотрим три случая.
А) S ├─ А0. Тогда S0 = S U { А0 } и из (2) имеем:
S, А0 ├─ BB.
Отсюда по следствию из теоремы дедукции получаем
─
S ├─ А0, что невозможно в силу непротиворечивости S.
Б) S├┼ А0 и А0 не имеет вида х В0(х). Тогда S0 = S U {
А0} и мы точно так же, как и в случае «а», получим S ├─
─
А0, что противоречит условию.
В) S├┼ А0 и А0 = х В0 (х).
Тогда S0 = S U { А0, B0, (bi0)} , и потому
S, А0, B0, (bi0) ├─ ВВ.
Так как формула B0 (bi0) замкнута, то тем же приемом, что и выше, получим
______
S, А0 ├─ B0 (bi0).
Так как bi0 не входит в А0 и в формулы из S, то, повторив весь вывод с заменой bi0 на
переменную xJ, не входящую в участвующие в выводе формулы, мы получим
_____
_____
S, А0 ├─ B0 (xJ), или S ├─ А0 -> B0 (xJ).
______
Дополним вывод А0 -> B0, (xJ) из S формулами:
______
А0 ->  xJ B0 (xJ)
(правило -введения)
_____
_____
 xJ B0, (xJ) -> B0 (xJ) (аксиома)
_____
А0 -> B0 (x)
(правило силлогизма)
____
А0 ->  x B0 (x)
(правило -введения)
____ _______
 x B0 (x) ->  x B0 (x) (правило -отрицания)
_______
А0 ->  x B0 (x)
(правило силлогизма)
Поскольку  x B0 (x) = А0, то мы получили вывод из S формулы А0 -> А0, т. е. S, А0
├─ А0. А так как S, А0 ├─ А0, то по правилу умножения формул S, А0 ├─ А0А0. Отсюда
следует
S├─ А0, и мы снова пришли к противоречию с условием. Тем самым мы закончили
доказывать непротиворечивость множества формул S0.
Далее, по А1 и S0 мы аналогично построим непротиворечивое множество S1, такое, что:
S0  S1, S1 ├─ А1 или S1 ├─ А1.
Продолжая этот процесс, мы получим последовательность непротиворечивых множеств
формул
S0  S1 S2 …,

таких, что Si ├─ Аi и Si ├─ Аi. Следовательно, T = U Si есть непротиворечивое и полное
i=0
множество формул.
Теперь построим интерпретацию исчисления предикатов α, в которой истинны все формулы
из α. В качестве основного множества возьмем множество М термов языка α1, в которых нет
предметных переменных – это так называемые замкнутые термы языка α1. Определим на М
операции f и предикаты р, соответствующие символам операций f и предикатов р из α.
Если а – символ 0-арной операции из σ, то положим а=а. Если f – символ n-арной
операции из σ, p – символ n-арного предиката и t1, …, tn – термы из М, то положим
f (t1, …, tn)=f(t1, …, tn)

p (t1, …, tn)=
и, если Т ├─ р(t1, …, tn)

л, если Т ├─ р(t1, …, tn)
Тем самым определена интерпретация (М, σ) исчисления α1, а потому и α.
Теперь индукцией по рангу формулы А докажем, что для любой замкнутой формулы языка
α1:
Т├─ А в α1  А  и в (М, σ).
(3)
Для упрощения записи верхний индекс  у формул будем опускать.
Если А = р(t1, …, tn) – элементарная формула, то (3) верно по определению предиката р.
Пусть А – замкнутая формула ранга r > 0. В зависимости от последней операции в А
возможны 6 случаев.
1. А = А1А2. Используя определение конъюнкции, предположение индукции и правила
умножения и разделения формул, получим:
А  и А1 = и, А2 = и Т├─ А1 ,Т├─ А2 Т├─ А1А2.
2. А = А1  А2. Если А1  А2 и, то А1 = и или А2 = и. Тогда по предположению
индукции Т├─ А1 или Т├─ А2, а поэтому и Т├─ А1  А2. Обратно, пусть Т├─ А1  А2.
Если Т├─ А1 или Т├─ А2, то по предположению индукции А1  и или А2  и, а потому и
А  и. В противном случае в силу полноты системы Т имеем:
Т├─ А1 ,Т├─ А2
Тогда по правилам умножения формул и де Моргана получим:
_____
Т├─ А1А2, Т├─ А1  А2
Итак, имеем:
_____
Т├─ А1  А2, Т├─ А1  А2
что невозможно в силу непротиворечивости Т.
3. А = А1. Учитывая предположение индукции и полноту системы формул Т, получим:
А  и А1  л Т├─ А1 Т├─ А.
4. А = А1->А2. В этом случае, используя предположение индукции и правила введения
посылки, контрапозиции и двойного отрицания, получим:
А  и А1  л или А2  и Т├─ А1 ,
или Т├─ А2 Т├─ А2 -> А1 или Т├─ А2 -> А1 Т├─ А.
5. А=х А1(х). Если А  и, то А1(t)и при любом tM. Тогда по предположению
индукции Т├─ А1(t) для всех tM. Допустим, что
______
___
T ├─ х А1(х). Тогда по правилу -отрицания T ├─ х А1(х) и по
____
построению множества Т в Т существует формула А1(b) при некоторой константе
bM. В итоге мы получили:
Т├─ А1(t) при любом tM и Т├─ А1(b) при bM,
что невозможно в силу непротиворечивости Т. Следовательно,
T ├─ х А1(х).
Обратно, пусть T ├─ х А1(х). Если х А1(х)и, то А1(t)л при некотором tM.
Тогда по предположению индукции
___
Отсюда по аксиоме V2 и по правилу -отрицания получим
Т├─ А1(t).
____
_______
T ├─ х А1(х) и T ├─ х А1(х),
что невозможно в силу непротиворечивости Т.
6. А = х А1(х). Если А  и, то А1(t)и при некотором tM и по предположению
индукции Т├─ А1(t). Отсюда, используя аксиому V2, получим T ├─ х А1(х), т. е. Т├─ А.
Обратно, если Т├─ А, то в силу непротиворечивости Т имеем Т├┼ А. Тогда по
построению Т в Т содержится формула А1(b)
при некотором bM. По предположению
индукции А1(b)и, а потому и х А1(х)=и.
Таким образом, все замкнутые формулы языка α, выводимые из Т, истинны в
интерпретации (М, ). А так как ST, то и все формулы из S истинны в (М, ), т. е.
множество S выполнимо и теорема доказана.
Теперь можно доказать и теорему Гёделя о полноте исчисления α.
Пусть А – формула исчисления предикатов α и А  и в любой интерпретации исчисления
α. Если х1, …, хn суть все переменные, имеющие свободные вождения в А, то формула В =
х1, …, хnА также истинна в любой интерпретации α, а потому формула В ложна в любой
интерпретации α. Отсюда следует, что множество формул {B} невыполнимо.
Тогда по теореме о выполнимости множество {B} противоречиво, т. е. существует формула
С языка α, такая, что
B ├─ CC.
Но тогда по следствию из теоремы дедукции ├─B. Теперь, применяя n раз аксиому V1 и
правило заключения, получим ├─A, что и доказывает теорему Гёделя.
В качестве других следствий теоремы о выполнимости докажем так называемую теорему о
совместной выполнимости и локальную теорему Мальцева.
Теорема (о совместной выполнимости). Если замкнутая формула А исчисления α
истинна в любой интерпретации α, в которой истинны формулы некоторого Т замкнутых
формул, то Т├─ А.
Доказательство. Из условия видно, что множество формул Т’ = Т U{A} невыполнимо.
Значит, по теореме о выполнимости множество T’ противоречиво, т. е. T, A├─ BB для
некоторой формулы В. Отсюда по следствию из теоремы дедукции Т├─ А.
Теорема Мальцева. Множество замкнутых формул S исчисления α выполнимо тогда и
только тогда, когда выполнимо любое его конечное подмножество.
Доказательство. Выполнимость конечных подмножеств выполнимого множества формул
очевидна. Докажем обратное утверждение. Допустим, что выполнимо любое конечное
подмножество формул множества S, а само S невыполнимо. Тогда по теореме о выполнимости
оно противоречиво, т. е. найдется такая формула А, что S├─ AA.
Но тогда AA выводима лишь из конечного подмножества S1 S формул, участвующих в
выводе формулы AA из S. Следовательно, нашлось противоречивое конечное множество
формул из S. Если бы S было выполнимым, то по теореме 9.7.4 нашлась бы интерпретация α, в
которой была бы истинной формула AA, что невозможно. Полученное противоречие и
доказывает теорему.
Лекция № 10. Понятие о теории моделей.
Теория моделей возникла на стыке между алгеброй и математической логикой. Она
занимается в основном изучением таких свойств классов алгебраических систем, которые могут
быть записаны формулами какого –либо логического исчисления (чаще всего, исчисления
предикатов). При этом сами алгебраические системы изучаемого класса становятся
интерпретациями или моделями соответствующего исчисления. Из анализа связей между
формальным языком (формальными выводами, доказательствами и т.п.) и его интерпретациями
черпает теория моделей и главные средства исследований. В самостоятельную область
математики теория моделей выделилась в 50-е годы нашего века благодаря работам Мальцева,
Тарского, Геделя, Левенгейма, Скулема, Биркгофа и др.
К настоящему моменту теория моделей является достаточно развитой областью
математики со своей проблематикой и собственными методами исследований. Многие из
разработанных в ней методов успешно используются в других областях математики.
С некоторыми такими методами мы познакомимся в данном параграфе.
Предварительно сделаем одно замечание о предикате равенства и дадим несколько
определений.
Пусть К - некоторый класс алгебраических систем сигнатуры σ. Тогда можно построить
язык логического исчисления в сигнатуре σ и записывать свойства систем из класса К формулами
полученного исчисления. Однако формализация свойств систем зачастую существенно
облегчается, если в сигнатуру исчисления ввести еще двухместный предикат равенства =.
Полученную сигнатуру будем обозначать в виде σ^. Сразу отметим, что, введя предикат
равенства, мы должны пополнить и систему аксиом исчисления, введя в нее аксиомы,
характеризующие предикат равенства. В качестве таких аксиом выбираются формулы:
x (x=x),
x1, x2 (x1 = x2 ->x2 = x1),
x1, x2, x3 (x1 = x2  x2 = x3 -> x1 = x3),
характеризующие отношение равенства как отношение эквивалентности, а также все формулы
вида
x1, …, xk, y1, …, yk (x1 =y1 … xk =yk -> h(x1, …, xk) = h(y1, …, yk)),
x1, …, xn, y1, …, yn (x1 =y1 … xn =yn -> (p(x1, …, xn) = p(y1, …, yn))),
где h – функциональный, а р – предикативный символы из σ Последние формулы характеризуют
согласованность отношения равенства со всеми предикатами и операциями из σ. Ниже мы будем
рассматривать лишь исчисления с равенством и аксиомы равенства будут автоматически
включаться в соответствующие системы аксиом.
Определение 10.1. Пусть K - класс алгебраических систем сигнатуры σ. Множество
замкнутых формул исчисления предикатов сигнатуры σ^, истинных во всех системах из K,
называется элементарной теорией класса K и обозначается th(K) или th(А), если K состоит из
одной алгебраической системы А.
Например, можно говорить об элементарной теории арифметики натуральных чисел, об
элементарной теории групп, об элементарной конечных полей и т.д.
Заметим, что слово «Элементарная» в термине «элементарная теория» объясняется тем, что
любая формула исчисления предикатов выражает свойства систем через указание связей между их
элементами, поскольку кванторы навешиваются лишь на предметные переменные.
Задача описания элементарной теории th(K) для разных классов K является важнейшей
задачей теории моделей. В частности, теория th(K) является разрешимой, если существует
алгоритм, позволяющий для любой формулы исчисления в сигнатуре σ^ выяснить, содержится
она в th(K) или нет. В противном случае элементарная теория называется неразрешимой. В
решении вопросов о разрешимости или неразрешимости элементарных теорий теория моделей
смыкается с теорией алгоритмов, которая будет изучаться в последующих главах.
Определение 10.2. Пусть F – произвольное множество формул исчисления предикатов
сигнатуры σ^. Алгебраическая система А сигнатуры σ, на которой истинны все формулы из F,
называется моделью для F, что записывается в виде
А╞═ F.
Вопросы, связанные с построением и исследованием моделей для заданных систем формул,
также занимают важное место в теории моделей. В частности, алгебраические системы сигнатуры
σ называют элементарно эквивалентными, если на них истинны одни и те же формулы
исчисления предикатов сигнатуры σ^.
Очевидно, что изоморфизма систем следует их
элементарная эквивалентность. Обратное же не всегда верно.
В связи с этим укажем на одну из долго стоящих и широко известных проблем А. Тарского
(проблему о полноте для элементарной теории свободных групп): будут ли элементарно
эквивалентными свободные группы рангов m и n при m>n>1.
Определение 10.3. Класс
К
алгебраических систем сигнатуры σ называется
аксиоматизируемым (конечно аксиоматизируемым), если существует такое множество (конечное
множество) формул F исчисления предикатов сигнатуры σ^, что
АК А╞═ F.
При этом множество F называется системой аксиом класса К. Очевидно, что наличие
хорошей системы аксиом, описывающих класс алгебраических систем, играет немаловажную роль
для изучения этого класса. В связи с этим в теории моделей вопросу аксиоматизируемости
уделяется серьезное внимание. Приведем несколько примеров аксиоматизируемых классов.
1. Класс всех групп в сигнатуре σ = < , 1> конечно аксиоматизируем. Системой аксиом
может служить множество формул Agr
1) x1, x2, x3((x1 x2) x3 = x1 (x2 x3)),
2) x1 (x1  1 = x1),
3)  x1  x2 (x1 x2 = 1).
Добавление к ним формулы
4)  x1, x2 (x1 x2 = x2 x1)
приводит к аксиоматике класса всех абелевых групп.
2. Класс всех полей в сигнатуре σ = < +, , 0, 1> конечно аксиоматизируем. Его система
аксиом Af может быть получена добавлением к аксиомам абелевых групп в сигнатуре < +, 0>,
выписанных в примере 1, формул 1, 2, 4, характеризующих коммутативные полугруппы с
единицей, и формулы
 x1 (x1  0 ->  x2 (x1 x2= 1)).
Добавив к системе аксиом Af еще аксиому
Фр : х ((1 + …+1) х = 0)
р
(р- простое число), мы выделим из всех полей класс полей характеристики р.
Класс полей характеристики 0 задается системой аксиом, полученных добавлением к
системе Аf отрицаний аксиом Фp по всем простым числам р. Эта система аксиом бесконечна.
Можно доказать, что класс полей характеристики 0 не является конечно аксиоматизируемым.
3. Арифметику натуральных чисел можно рассматривать как алгебру сигнатуры
σA = {+ , , ‘, 1}, где ‘ есть символ унарной операции. Объединяя систему аксиом Пеано с
требованием к операциям сложения и умножения по Грассману, получим следующую систему
аксиом – формул:
 x1 (x1’ = 1),
 x1, x2 (x1 = x2 -> x1‘= x2’),
 x1, x2 (x1’ = x2’ -> x1 = x2),
 x1, (x1 + 1 = x’),
 x1, x2 ( x1 + x2’) = (x1 + x2)’,
 x1(x1  1= x1),
 x1, x2 ( x1 x2’ = x1 x2 + x1),
A(1)  x1 (A(x1) -> A(x1‘)) -> y A(y)
где А – произвольная формула сигнатуры σA.
Пусть K произвольный аксиоматизируемый класс алгебраических систем сигнатуры σ и А
– его система аксиом Тогда, добавив к аксиомам исчисления предикатов аксиомы равенства и все
аксиомы из А, мы построим новое логическое исчисление αК. В нем, как и в изученном нами
исчислении предикатов α, можно определить понятия формулы, выводимой из заданной системы
формул, доказуемой формулы и т.д.
Алгебраические системы класса К будут являться такими интерпретациями исчисления αК,
в которых истинны все формулы из А, т.е. будут моделями множества А. Для исчисления αК, как
и для исчисления α, доказывается следующая теорема о полноте.
Если Ф – замкнутая формула исчисления αК , то
Ф  th (K)  ├─ Ф.
αК
Эту теорему, с одной с стороны, можно использовать для проверки истинности формулы Ф
на системах класса K, а с другой стороны, из нее следует ряд общих методов получения
утверждений об алгебраических системах. Один из этих методов, называемый методом
компактности, основан на локальной теореме Мальцева для любого исчисления αК, называемой
также теоремой компактности.
Множество формул исчисления αК. Выполнимо только тогда и только тогда, когда
выполнимо любое его конечное подмножество.
Первые примеры на применение этой теоремы были указаны в теории групп самим
Мальцевым. Ниже мы приводим один его результат.
Пусть G – группа и G2 < G1 < G. Охарактеризуем сначала формулами утверждения:
1 Gi < G – Gi - подгруппа группы G;
2 G2  G1
3 G2 ◄ G1- G2- нормальный делитель группы G1.
4 G1 / G2 - факторгруппа
С этой целью введем на G два одноместных предиката R1 и R2, положив:
Ri(x) = и x  Gi, i = 1, 2.
Тогда утверждения 1 – 3 запишутся формулами:
 x1 , x2 , x3 (Ri(x1) Ri(x2) (x2 x3 = 1) -> Ri(x1 x3)),
 x (R2 (x)-> R1(x)),
 x1, x2, x3 (R1(x1) R2(x2) (x1 x3 = 1)-> R2(x3 x2 x1)).
На элементы факторгруппы G1 / G2 можно смотреть как на элементы группы G1, определив
иначе предикат равенства E(x, y) элементов x, y из G1 (как принадлежность их к одному
смежному классу по G2):
E(x1, x2) x3 (R2(x3)(x3 x2 = x1)),
И несколько иначе, чем в G1 операцию  умножения элементов из G1
x1  x2 = x3  x4 (R2(x4)(x1 x2 = x3 x4)).
Легко видеть, что операция  определена корректно, и если какое – либо групповое
свойство Р группы G1 выражено формулой В в сигнатуре σ = { R1, R2, =, , 1},
то, заменив в В предикат = на Е и операцию  на , мы получим формулу Р*, выражающую
групповое свойство факторгруппы G1 / G2 (т.е. если Р истинна на G1, то Р* истинна на G1 / G2).
Пусть теперь Р = [P1, …, Pk]- набор свойств группы G, записываемых конечными
системами замкнутых формул и сохраняющихся при переходе к подгруппам.
Пусть группа G имеет тип Р, т.е. в ней существует нормальный ряд
G = G0 ► G1 ►…► Gk = 1
(1)
такой, что Gi-1 / Gi обладает свойством Pi, i = 1, …, k.
Как и выше, введем на группе G одноместные предикаты R1, R2, …, Rk,
характеризующие подгруппы G1, G2, …, Gk и образуем множество формул АG в сигнатуре σ1,
состоящей из предикатов R1, R2, …, Rk, =, бинарной операции  и нуль-арных операций,
отвечающих всем элементам группы G , т.е. всех констант из группы G, включив в него:
1) систему аксиом Аgr;
2) формулы  x1, x2 (x1 = x2 -> Ri(x1) = Ri(x2));
3) формулы, характеризующие утверждения
Gi+1 ◄ Gi, i = 0, …, k-1;
4) формулу x (Rk(x) -> x = 1), утверждающую, что Gk = 1;
5) формулы для записи того факта, что факторгруппа Gi-1 / Gi обладает свойством Рi.
Введем еще для группы G систему формул D(G), называемую диаграммой группы G.
Для любых элементов gi, gJ, gr  G D(G) содержит формулу gi gJ = gr, если она истинна в G, и
формулу gi gJ  gr в противном случае.
Объединение систем АG и D(G) обозначим через KG.
Очевидно, что G имеет тип Р тогда и только тогда, когда множество формул KG выполнимо, т.е.
имеет модель.
Теорема 10.4. Если каждая конечно порожденная подгруппа H < G имеет тип Р, то и G
имеет тип Р.
Доказательство. Cогласно локальной теореме Мальцева для выполнимости множества формул
KG достаточно доказать выполнимость любого его конечного подмножества. При этом из
конечных систем достаточно рассматривать лишь подсистемы, содержащие АG.
Итак, пусть D’ - конечная подсистема из D(G), G’ - множество элементов из G, участвующих в
соотношениях из D’, и Н – подгруппа в G, порожденная множеством G’. Так как Н - подгруппа
типа Р, то множество формул АG U D(H), а потому и АG U D’ выполнимо, и теорема доказана.
Примеры.
10.5. Возьмем в качестве свойства Pi формулу x, y (xy = yx). Тогда группы типа Р –
это в точности разрешимые группы ступени разрешимости n < k и потому получается
Теорема 10.6. Если каждая конечно порожденная подгруппа группы G разрешима
ступени n < k, то и G - разрешимая группа ступени n < k.
10.7. Возьмем в качестве Р1 свойство: группа содержит не более n элементов, а в качестве
Р2 - любую формулу, выводимую из Аgr. Тогда получится
Теорема 10.8. Если каждая конечно порожденная подгруппа группы G содержит
нормальный делитель индекса k < n, то G также содержит нормальный делитель индекса
k < n.
Таким образом, выбирая различные свойства Pi, мы будем получать различные утверждения о
группах на основании свойств только конечно порожденных подгрупп.
Проиллюстрируем на примере еще один метод теории моделей для получения утверждений об
алгебраических системах, называемый методом переноса.
Теорема 10.9. Если В – замкнутая формула в сигнатуре теории полей и В истинна на
всех полях характеристики 0, то существует такое простое число р0, что В – истинна на любом
поле характеристики p > р0.
Доказательство. Действительно, если В – истинна на всех полях характеристики 0, то В
выводима из множества формул Аf U{Фр : р = 2, 3, 5, …}. Однако в выводе формулы В
используется лишь конечное множество аксиом вида Фр:
Т = { Фр i1 , …, Фр ik}, pi1 < … < pik = p0.
Тогда В выводима из систем аксиом Аf U T и потому истинна на всех полях, кроме полей
характеристики pi1, …, pik, и, в частности, всех полях характеристики p > р0.
Выбирая в качестве В различные формулы, мы будем получать различные конкретные
утверждения. В частности, можем получить следующий интересный факт
Если система алгебраических уравнений
f1(x1, …, xn) = a1
……………………
fm(x1, …, xn) = am
(2)
над кольцом Z не имеет решений в любом расширении поля рациональных чисел, то существует
такое простое число р0, что при каждом простом p > р0 система уравнений, полученная заменой в
(2) всех коэффициентов их вычетами по модулю р не имеет решений в любом поле
характеристики р.
Download